Wednesday, February 22, 2006

Tar problem med J2ME slut i och med JSR-232?

Hoppas det!!
Ett av problemen som Java utvecklare för J2ME plattformen bråttas med har varit alla buggar som funnits och svårigheten med att kunna uppgradera Java versionen i respektive telefon.
Nu är JSR 232: Mobile Operational Management på väg in i Nokia’s S60 plattform.
Resultatet blir:
1) Java stöd i mobiler för både J2ME/MIDP och J2ME/Personal Profile som dessutom har stöd för MSA som innebär en enhetlig javaplattform som spänner över många mobiler och mobiltelefontillverkare och som därmed innehåller alla bra Java API:er som vi Java utvecklare har väntat på länge.
2) Det kommer gå att på en enkelt & säkert sätt uppgradera Java plattformen i och med JSR-232

Så här säger Nokia:
During 2006 the S60 platform will be bringing even more opportunity to Java developers with the JSR 248, Mobile Service Architecture for CLDC, compatibility. JSR 248 will introduce predictable set of Core APIs and roadmap for the developers how the Core API set will develop in future. Another important introduction is JSR 232 - Mobile Operational Management, which will allow the Java capabilities of S60 platform devices to be managed both locally and remotely with a modular architecture that enables extensibility after manufacturing. During 2006 the S60 platform will also offer rich UI support matching native capabilities (eSWT) and J2SE compatible API subset (CDC/FP).The Java implementation on the S60 platform shares many common features with the implementation on theSeries 40 Platform and the Series 80 Platform. This allows developers to easily extend their applications' reach to the entire platform range.

Hittade denna fina sammanfattning av JSR-232, JSR-248 och JSR-249:
All major mobile phone manufacturers worked together in order to define a 'Mobile Operational Management' concept (JSR-232). The OSGi Service Platform and the OMA DM (JSR-246) specifications provide the basis for building this standard for end-to-end management of CDC-enabled mobile handsets. JSR-248/249 go beyond the basic JSR-232 specification. Together these build a solid base for development of middleware in form of OSGi bundles on all kinds of mobile devices - thus enabling network operators and service providers to remotely manage any kind of services on the target. The well-known OSGi concepts of remote management and maintenance of the whole software lifecycle are applied to the world of mobile phones. The upcoming OSGi Release 4 specifications are going to further finegrain the corresponding APIs in order to best-fit each platform and profile and harmonize the different JSRs.For users, who want to install new software the new approach will simplify downloads dramatically. A complete set consisting of all required components/codecs may be dynamically packaged for the specific phone, downloaded and installed in the background while the phone is still in use. Security during download and operation is significantly increased. For developers, the numerous new APIs and runtime features e.g. for message queuing and connectivity will make it easier to write feature-rich applications and enable inter-phone and server-driven applications. Packaging of applications will become a lot simpler than nowadays.

Java EE5 -- har kommit!

Java EE5 har kommit!
I alla fall en beta version av Java EE 5 finns att ladda ner kallad Java EE 5 SDK Preview.

Dessutom finns Netbeans 5.5 beta med Java EE5 stöd att ladda ner, den
kallas Preview: NetBeans IDE 5.5 with NetBeans Enterprise Pack , som innehåller:
- NetBeans 5.5 Preview with Java EE 5 support
- NetBeans Enterprise Pack 5.5 Preview with BPEL, XML, and UML support
- Sun Java System Application Server PE 9 Beta
*****************************************************************************************
This preview gives developers an early look at a collection of tools that enable Java EE5 development and creation of Service Oriented Architecture
(SOA) applications. It is all here in a special one-time bundle integrated with the NetBeans IDE 5.5 Preview: UML Modeling, Visual Design Tools for SOA Architects, and Java EE 5 SDK Preview.

This special sneak peek is available for those of you who want to get a head start designing and developing next generation Java EE5 and SOA applications. Our goal is to make it easier for you to model, implement, and deploy Web services, business processes, and SOA architectures with the best new tools we have to offer -- all in one preview release made available to the NetBeans community.

***************************************************************************************

SOA

"SOA är som tonårssex. Alla pratar om det, få gör det och de som gör det gör det dåligt", citat från Ross Altman, Suns teknikchef i Computer Sweden 2006-02-22 nr 21

:-)

Tuesday, February 21, 2006

Netbeans 5.0 och Subversion

Min favorit Java utvecklingsverktyg just nu är Netbeans 5.0 och när det gäller versionshantering av kod använder jag Subversion. Jag har därför installerat stöd för detta i Netbeans 5.0.
Jag följde de installationsavisningar som finns för att installera subversion i Netbeans5.0. Dessutom var man tvungen att installera subversion command line client vilket inte framgick av installationsanvisningarna, hämta därför hem svn-1.3.0-setup.exe.
Det visade sig att vissa saker inte gick att göra inne i Netbeans’s Subversion, jag installerade därför även Subversion klienten TortoiseSVN, hämtade hem: TortoiseSVN-1.3.1.5521-svn-1.3.0.msi. När jag går bet inne i Netbeans så använder jag Tortoise, vad bra! Tilläggas bör väll även göras att jag även använder Eclipse och tycker också den är bra, jag gillar att jobba med både Netbeans & Eclipse! Två bra Open Source Java utvecklingsverktyg som är bra helt enkelt! Vad bra det är med konkurrens!

Java och mobiltelefoner, Palm och PocketPC

Min erfarenhet är att terminalen skall ha Java stöd från början, då finns det chans att det kommer fungera att skriva Java applikationer. Fördelen är att tillverkaren tar ansvar för att Java stödet fungerar och rättar upp eventuella buggar. Att installera Java stöd själv är inte att rekommendera, det blir bara en massa problem, det är min erfarenhet.

Idag då man köper en mobiltelefon med Java stöd måste man veta vilken version av J2ME Profile som stöds. Den senaste versionen för mobiltelefoner är J2ME/MIDP 2.0 och den senaste versionen för PDAer är det J2ME/Personal Profile 1.1.
Men även vilken version av J2ME Configuration är intressant. För J2ME/MIDP är den senaste CLDC 1.1 och för J2ME/Personal Profile är den senaste CDC 1.1.

J2ME/MIDP2.0 finns det många tillverkare av mobiltelefoner som stödjer.
Tyvärr räcker det inte med stöd för J2ME/MIDP2.0 för att bygga lite mera avancerade Java applikationer, då måste man hålla koll på vilka extra Java API:er (J2ME Optional package) som telefoner stödjer.

Java världen har också insett detta problem med fragmenteringen av Java plattformen för mobila plattformen. För att motverka fragmenteringen av Java plattformen så håller det på att tas fram en Mobile Service Architecture (MSA). MSA skall ses som en fortsättning på arbetet med JTWI, syftet är att få en enhetlig javaplattform som spänner över många mobiler och mobiltelefontillverkare.
Det finns en MSA for CLDC (JSR 248) och en MSA för CDC (JSR 249). JSR 248 är en paraply JSR bestående av 23 st JSR’er.

Så i framtiden kommer Mobile Service Architecture för CLDC (JSR 248) vara värdefull vid val av mobiltelefon, men i väntan på att MSA blir klar så får vi klara oss på annat sätt.

Nokia har lanserat Nokia plattform S60 som innehåller alla bra Java API:er som vi Java utvecklare har väntat på länge. S60 plattformen är JTWI compliant och innehåller de extra Java API:er som MSA för CLDC förväntas komma innehålla.
Java MIDP in S60:
- Complete JTWI 1.0 compliancy, JSR-185 (2nd Edition Feature Pack #2)
- Location API, JSR-179 (3rd Edition)
- SIP API, JSR-180 (3rd Edition)
- Security and Trust Services, JSR-177 (3rd Edition)
- WMA API 2.0, JSR-205 (3rd Edition)Cell Broadcast and CB Push Registry support (2nd Edition Feature Pack #3)
- Scalable 2D Vector Graphics API, JSR-226 (3rd Edition)
- Effects of Scalable UI for Java MIDP (2nd Edition Feature Pack #3)
- J2ME Web Services Specification, JSR-172 (2nd Edition Feature Pack #3)
- Enhancements for Java APIs for Bluetooth, JSR-82OBEX support (2nd Edition Feature Pack #3)Push registry support (2nd Edition Feature Pack #2)
- CLDC 1.1, JSR-139 (2nd Edition Feature Pack #2)
- PIM API, JSR-75 (2nd Edition Feature Pack #2)
- FileConnection API, JSR-75 (2nd Edition Feature Pack #2)
- Mobile 3D Graphics API, JSR-184 (2nd Edition Feature Pack #2)
- Enhancements for Mobile Media API, JSR-135Midi control support (3rd Edition)Streaming media support (2nd Edition Feature Pack #3)Mobile Media API 1.1 (2nd Edition Feature Pack #1)

När det gäller J2ME/Personal Profile 1.1 så har det varit dåligt stöd för detta bland terminaltillverkarna. Men det har börjat komma ett antal mobiltelefoner/PDAer för J2ME/Personal Profile, bland annat finns Nokia series80 plattformen. Den har stöd för både J2ME/MIDP & J2ME/Personal Profile.
Men under 2006 kommer Nokia series 60 att bygga på CDC 1.1 (JSR-248) och det kommer att vara möjligt att köra både J2ME/MIDP och J2ME/Personal Profile applikationer.

När det gäller Pocket PC och Java är det problem.
Microsoft levererar naturligtvis inte med Java stöd och tillverkarna av PocketPC verkar inte intresserade att lägga på Java stöd från början.
Men det finns lite olika alternativ om man vill installerar Java stödet själv.
Några olika jvm’er:
- J9 från IBM
- CrEme4.1 från NSICOM
- Mysaifu JVM, (Open Source)
CrEme4.1 var enklast att installera!
J9 går att installerat om man har installerat IBMs utvecklingsverktyg WSDD 5.7.1, det följer med olika jvm’er.

När det gäller Palm och Java så levereras det inte med stöd för J2ME/MIDP 2.0.
Men Palm ger delvis support på Java, det går att ladda ner Java stöd och det är IBMs J9 som finns tillgängligt för nerladdning. Tyvärr har Palm inte Java stöd för nya modeller som t.ex. Palm LifeDrive och Palm TX.

Så jag har väll köpt min sista Palm, synd tycker jag, jag har alltid gillat Palm. :-(

Dags att certifiera mig på Java5

Nu är det dags att lära mig allt nytt som kommit i och med J2SE 5.0
Därför är det dags att certifiera mig på Java5, jag har därför införskaffat mig boken SCJP Sun Certified Programmer for Java 5 Study Guide. Boken är riktigt bra och den är dessutom skriven av dem som gjort certifieringen, så dom vet vad dom snackar om.

Hur blir jag Java certifierad?
För att bli certifierad måste du klara ett eller flera prov med flervalsfrågor. Ett internationellt gällande diplom blir ditt kvitto på att du godkänts i certifieringsprovet. Provavgiften betalas genom förköp av certifieringskupong, voucher, hos Sun Educational Services och sedan utför certifieringen på något certifieringsställe (Prometric Testcenter) nära där du själv bor. Lista på dessa får du när du beställer kupongen. Du kan även gå in på www.prometric.com
FAQ: Certification FAQ