RealTime IT News

J2SE 1.5: A Tiger By the Tail

SAN FRANCISCO -- In what is being heralded as "the most significant enhancement to the Java platform in the technology's nine-year history," Sun Microsystems introduced its new Java 2 Platform Standard Edition (J2SE) version 5.0.

The upgrade, known as Project Tiger or J2SE 1.5, has more than 100 new features and is scheduled for a Fall 2004 release via the Java Developer Kit (JDK). The kit includes four language changes, enhanced for loop, enumerated types; static import and autoboxing. The update supports C-style formatted input/output, variable arguments, concurrency utilities and a simpler RMI (Remote Method Invocation) interface generation, new JVM (Java Virtual Machine) monitoring, management API and a new (but compatible) default Java look.

The beta 2 release of the Java 2 Platform Standard Edition 5.0 software development kit (JDK) is now available. It includes tools such as compilers and debuggers necessary for developing applets and applications and the associated Java Runtime Environment (JRE).

Noted Java guru and Sun CTO James Gosling told internetnews.com last week that the feedback has so far been positive.

"It's a combination of, 'the most reliable release we've done,' 'really good performance,' and feature-wise people are quite happy," Gosling said. "The language changes in particular: we've never done a set of language changes this comprehensive. Generics and Enumerations are the big-ticket items and meta data, while probably the least understood in the community, probably will have a big effect."

What to Expect

The metadata feature in J2SE 1.5 provides the ability to associate additional data alongside Java classes, interfaces, methods, and fields. The javac compiler or other tools can read this additional data, or annotation, and depending on configuration can also be stored in the class file and can be discovered at runtime using the Java reflection API, Sun said in a recent posting.

"One of the primary reasons for adding metadata to the Java platform is to enable development and runtime tools to have a common infrastructure and so reduce the effort required for programming and deployment, Sun said. "A tool could use the Metadata information to generate additional source code or provide additional information when debugging. In lieu of Metadata tools the following example creates an artificial debug Metadata annotation that is then simply displayed at runtime. It is envisioned that most Metadata tags form a standard, well-specified set.

The release also contains a more powerful native profiling API called Java Virtual Machine Tool Interface, or JVMTI. This API has been specified through JSR 163 and was motivated by the need for an improved profiling interface. However, JVMTI is intended to cover the full range of native in-process tools access, which in addition to profiling, includes monitoring, debugging and a potentially a wide variety of other code analysis tools.

J2SE 1.5 introduces several revisions to the core XML platform, including XML 1.1 and Namespace, XML Schema. SAX 2.0.1. XSLT and the fast XLSTC compiler, and finally DOM Level 3 support.

"In addition to the core XML support future versions of the Java Web Services Developer Pack will deliver the latest web services standards: JAX-RPC & SAAJ (WSDL/SOAP), JAXB, XML Encryption and Digital Signature and JAXR for registries," Sun said.

The implementation includes a mechanism for byte code instrumentation, Java Programming Language Instrumentation Services (JPLIS). This enables analysis tools to add additional profiling only where it is needed. The advantage of this technique is that it allows more focused analysis and limits the interference of the profiling tools on the running JVM. The instrumentation can even be dynamically generated at runtime, as well as at class loading time, and pre-processed as class files.

Also new in the J2SE 5.0 platform is the inclusion of the Java Management Extensions (JMX), which provides a simple, standard way of managing Java resources such as applications, devices and services.

Sun also discussed Project Mustang, the release that will follow Java 2 Platform Standard Edition 5.0. Sun said a multi-vendor team is currently receiving customer and partner input and will draft a Java Specification Request (JSR) for submission to the JCP. Topics later this year.

"Java has built a commanding lead in the network computing arena with undisputed popularity and demand among developers," John Loiacono, Sun executive vice president. "With over 110 million downloads of J2SE since its availability in December 1998, the Java platform continues to fuel the Java Economy and drive global business innovation on desktops and servers."

A Parade of Java Announcements

In related developer news, Sun said it is contributing code for Project Looking Glass, its 3D desktop environment and Java 3D technology, to the open source community. As an alternative to the more popular Windows or Macintosh desktops, Sun said Project Looking Glass runs on Solaris and Linux and features window transparency, rotation, zoom and miniaturization.

Sun also debuted its beta release of NetBeans 4.0 ; launched Java 2 Standard Edition 5, (known as Project Tiger or J2SE 1.5), unveiled its Sun Java Developer Network; and announced the upcoming release of Sun Java Studio Creator (formerly Project Rave) for a $99 per year subscription.

The company also said that it has inked a collaborative agreement with semiconductor design firm ARM to incorporate more Java at the semiconductor level for mobile devices.