From Within the Java Community Process Program
From proposals to final approvals
Welcome to the February edition of the JCP column! Each month you can read about the Java Community Process: newly submitted JSRs, new draft specs, Java APIs that were finalized, and other news from the JCP. This month I'll discuss four new JSRs and a few JSRs that are in the Proposed Final Draft and Public Review, and one final JSR.
Let's Start with J2ME Technology
A new JSR in this space is JSR 238, Mobile Internationalization API. It proposes to add culturally correct data formatting, and the sorting of text strings and such for MIDlets in a CLDC/MIDP environment, according to its submitter Nokia. The broad support for internationalization that you find in the J2SE platform is not part of the CLDC/MIDP environment because of memory footprint constraints. This optional package will deliver the appropriate level of internationalization functionality to Java-based devices.
JSR 226, also by Nokia, has reached Community Review. This JSR defines an API for scalable 2D vector-based graphics for J2ME technology, building upon the W3C specification for the Scalable Vector Graphics (SVG) format. This JSR was submitted this past summer and has made good progress through the process, reaching this milestone six months later.
Next, J2SE Technology
Late December 2003, the spec lead and expert group for JSR 127, JavaServer Faces, submitted the Proposed Final Draft for this API. This JSR defines a series of JSP tags and Java classes that enable the developer to build richer and more appealing user interfaces for Web-based applications than is achievable with just JSPs and servlets.
The next JSR I'll discuss just entered Public Review. JSR 200, led by Sun, involves a network transfer format for Java archives. The aim of this JSR is to deliver a dense download format for class files that can create much smaller archives than compressed JSR files. Once final, the technology will be delivered as part of the next version of the J2SE platform, aka "Tiger."
Then, J2EE Technology
The J2EE environment has seen the most activity in the last month or so. The J2EE 1.4 JSRs went final, of course, but what I'd like to discuss now are three new JSRs, one JSR in Public Review, and one final.
BEA and IBM submitted three new JSRs to the Community for approval for development. JSR 235 proposes an API for so-called Service Data Objects (SDO). SDO is roughly based on the Data Transfer Object pattern that many J2EE developers are familiar with. The JSR proposes to standardize Data Objects functionality with regards to changing the history, metadata, XML support, and neutral representation of business data among other things. JSR 236 proposes a timer for the Application Servers specification. It would provide an alternative to the existing java.util.Timer package and the Timer API in JMX. The third JSR is JSR 237, Work Manager for Application Servers. The submitters propose to provide an API to enable the concurrent execution of application-level work (for example, made up of EJB components or servlets) in J2EE-based environments. This JSR is closely related to JSR 166, which provides such facilities for J2SE 1.5 environments.
JSR 206 works on the next version of the Java API for XML Processing (JAXP), now in its third generation within the JCP, reaching Public Review 10 months after its submittal. There are several new main areas – XML 1.1, name spaces in XML 1.1, Document Object Model level 3, and SAX (Simple API for XML) version 2.0.1.
I'll complete this section on J2EE-related JSRs with the Rule Engine API for Java led by BEA. JSR 94 successfully passed the Final Approval Ballot in December. It is BEA's first JSR to become final and thus a "well done, lads!" to BEA. The API aims to reduce the development cost coming from incorporating business logic within applications by capturing this logic in sets of rules upon which operations and calculations can be performed.
By the time you read this column, the JCP.org Web site will look a little different than before. Its redesign will make it easier for you to find news about the JCP and about the JSRs, so you can quickly see if there's something new regarding your favorite JSRs and download the most current drafts. More changes are in the pipeline for the early March time frame, when the launch of JCP 2.6 is planned.
That's it for this month. I'm very interested in your feedback. Please e-mail me your comments, questions, and suggestions.
About the Author
Onno Kluyt is the director of the JCP Program Management Office, Sun Microsystems.