JavaOne 2003 -Day 1

by Sue Spielman

JavaOne day one kicks off complete with tied-died J2EE peace protestors dancing outside the Moscone Center and the techno band magnetic poets inside cruising through image and sound on center stage. We are in San Francisco after all.


Jonathan Schwartz keynoted this morning. ‘Java Everywhere’ is the theme we’ll be seeing and hearing this
year due to plans for creating an overlay with Java to make every device speak with every other. A lofty goal, but one backed up with a number of initiatives announced today that are focused on the embedded network.

With numbers flying everywhere in terms of the penetration of various Java platforms and devices, such as 250M Java enabled phones, 300M Javacards, 1.2B (yes, billion) VM’s running, it’s time to unite the various J2SE, J2EE, J2ME, and JavaCard platforms into one. Basically, it’s time we simplify to one common platform, something I think that all of us developers have been saying for some time now. As Guy Laurence, CEO of Vodafone pointed out, there are 4 things that people universally carry with them: a pen, keys, money…and a mobile phone.


It’s time to make the content and applications of the mobile platforms available to the server (J2EE + J2ME = Mobile Enterprise) through web services, with the key issue being compatibility and security. All of this is being demo’ed by GE Medical Systems showing us how XML and Java2D can be run on numerous devices for information on the spot for analysis and consultation in the health care field.



Ease of use and developer community is going to be key as we heard in the Java.net announcement today. And it came complete with a new cup logo unveiling. As Johnathon Schwartz put it, ‘One butt kicking platform‘ with more collaboration, new electrified brand, more market opportunities, communities of developers, and consumer branding . Java.net is a place where all Java developers can go for collaborations, sharing source code (already seeded by Sun), developers blogs and wikis. Javac has been open sourced to be followed by JAXB and JAX-RPC (in July) to name a few. From a conversation I had with Sun Director Ingrid Van Den Hoogen: “The Developer community needs to feel cool again. It’s time to get excited and bring the energy level back up and the infusion back in the community.’


The rally of the developers in the community started with the intent to bring the community playground together. It’s up to all of us to check out Java.net and get involved. Types of content include web services technology, J2SE 1.4, WSDP, JAX-RPC, Java Desktop, and Mobile. Check it out at www.java.net.


Ease of use is key and found throughout all of the platform announcements today. While J2SE 1.4.2 will be released in the next couple of weeks, and J2EE 1.4 delayed waiting for WS-I, we got a glimpse of what’s coming in 1.5. The Tiger (J2SE 1.5) release is going to be the first language features release that will include some cool stuff. Metadata, generics, enum support (C/C++ developers unite), collections as well as API improvements work will allow us to write Java code a lot cleaner. Project Rave (more details on this tomorrow) will provide the ease of use in development tools that we’ve been lacking in the Java community.


Metadata (marker conventions like getFoo/setFoo, naming patterns in EJBs, and Serializeable) will now be key in the language features that allow for annotation of classes/methods/field that can then be used by tool libraries. This will also allow for
simple declarative programming.


Generics will allow some classes to work on lots of types classes and methods (like HashMap)and can map from anything to anything, but everything is treated as an object.
Generics lets programmers express their knowledge of the class and let’s the compile do the work. What this means is that constantly casting objects will no longer be necessary.



We’ll also see iterating over collections syntax improvements, enumerated types, and autoboxing of primitive types. This will let the compile do boxing and uinboxing for us. For example, Integer x= 3 int y=x. And we’ll finally get printf that will allow for output formatting. Every one of these features got a round of applause from the audience.


Ease of Development (EoD) will be the major driving force behind J2EE 1.5 as well. Deployment Descriptors will use metadata so that developers will no longer have to write the DD, but instead can have it generated. The goal is that developers never see the DD but rather just program the metadata in the source code (but deployers still get to see them…lucky them)


There are a number of new J2EE JSR’s that will be getting some air time. For example:


-using metadata to define JAX-RPC servers, EJB 3.0 to reduce EJB complexity (there’s a novel concept), making it easier to define , use metadata , and have a single Java class so that an EJB looks more like normal classes.


-JAX-RPC 2.0 is the center of WS in Ja including: Soap 1.2, WSDL 1.2, WS-I.next


-JAXB 2.0 full JAX-RPC integration, adds full XML schema support, builds on metadata and allows for partial mappings


-JDBC 4.0 is also focused on EoD. We’ll see: automatic driver management, simplified connection creation, easy syntax for using metadata. JDBC will still focus on SQL (row/column) if you want object mapping abstractions use JDO or container managed persistence.


-JSR-223 is the first JSR to officially support scripting languages. We can use it to define rules within the web tier. The reference implementation will use PHP 5.0.


JavaServer Faces (JSF) is going final later this fall and is currently in EA2. JSF is a GUI toolkit with components that run in the web server. The default render is to HTML and then the generated HTML run in the browser. JSF attempts to solve the problem of the web app UI with a Server side user interface component framework for java based web application. More on this tomorrow.


A lot of time today was spent on mobility and the Java Technology for the Wireless Industry (JTWI). JTWI includes MIDP 2.0, server side push, new security framework, wireless messaging API (WMA), multi-media API (MMI). If you are just coming up to speed on the wireless world, check out JSR-185 which provides direction on how the various JSR related to the mobile space fit together. It is the roadmap for the entire wireless space.



There are a number of new J2EE JSR’s that will be getting some air time. For example:


-using metadata to define JAX-RPC servers, EJB 3.0 to reduce EJB complexity (there’s a novel concept), making it easier to define , use metadata , and have a single Java class so that an EJB looks more like normal classes.


-JAX-RPC 2.0 is the center of WS in Ja including: Soap 1.2, WSDL 1.2, WS-I.next


-JAXB 2.0 full JAX-RPC integration, adds full XML schema support, builds on metadata and allows for partial mappings


-JDBC 4.0 is also focused on EoD. We’ll see: automatic driver management, simplified connection creation, easy syntax for using metadata. JDBC will still focus on SQL (row/column) if you want object mapping abstractions use JDO or container managed persistence.


-JSR-223 is the first JSR to officially support scripting languages. We can use it to define rules within the web tier. The reference implementation will use PHP 5.0.


JavaServer Faces (JSF) is going final later this fall and is currently in EA2. JSF is a GUI toolkit with components that run in the web server. The default render is to HTML and then the generated HTML run in the browser. JSF attempts to solve the problem of the web app UI with a Server side user interface component framework for java based web application. More on this tomorrow.


Needless to say, this should be an interesting week.