JavaJCP Watch: WSCI on J2ME, Mobile Messaging from J2SE/EE and ebXML Support

JCP Watch: WSCI on J2ME, Mobile Messaging from J2SE/EE and ebXML Support content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

Mobile mania has hit the JCP this week with three new specification requests relating to mobile technologies. The first proposes an API for mobile messaging (such as SMS and MMS) from J2SE and J2EE applications as opposed to J2ME applications. The other two proposals deal with adding Web Services Choreography and support for an ebXML specification to J2ME. In addition, Java Servlet, JSP and J2EE proposed final specifications have also been posted.

New JSR’s

Three new specifications were proposed this week the first aiming at adding a high level mobile service invocation API to J2SE/EE with the first supported services being SMS and MMS. The second one deals with adding WSCI support to J2ME and the last one deals with adding support for one of the ebXML specifications to J2ME.

JSR-212 Server API for Mobile Services: Messaging – SAMS: Messaging

Mobile network services such as short message service (SMS) and multimedia message service (MMS) have gained tremendous popularity among users of mobile phones. Increasingly it is becoming necessary to provide J2EE and J2SE a standard, universal mechanism of compose, send and receive SMS and MMS messages as application developers add support for these technologies in their application servers or backend systems. The goal of this JSR is to provide API’s for Java applications on top of J2SE/J2EE to compose, send and receive short messages and multimedia messages.

According to the proposal, the scope of this API will not limit itself to only SMS and MMS but rather provide a high level API to accessing messaging mobile services, thereby accounting for future mobile messaging applications. It intends to serve as an example for future Java API’s accessing mobile network services.

There are currently JSR’s relating to support of SMS and MMS messaging on the mobile platform (J2ME), namely JSR 120 Wireless Messaging API: JSR 205 Wireless Messaging API 2.0: The programming model for this JSR intends to be different from the above proposals. However it would be nice if there would a single standard interface to mobile network messaging across J2ME and J2SE/EE, rather than 2 distinct ones, at least API wise.

This JSR will be under public review until 28th April 2003. To contribute, send an email to jsr-212-comments at

JSR-213 Micro WSCI Framework for J2ME

The Web Service Choreography Interface (WSCI) is an XML-based interface description language that describes the flow of messages exchanged by a Web Service participating in choreographed interactions with other services. WSCI describes how Web Service can be choreographed in the context of a message exchange in which the Web Service participates.

WSCI describes the observable behavior of a Web Service which is a view on how the Web Service is perceived to behave by the external world in the context of a given message exchange, and how the Web Service perceives the behavior of the external world in the context of a given message exchange.

This observable behavior is expressed in terms of temporal and logical dependencies among the exchanged messages, featuring sequencing rules, correlation, exception handling, and transactions. WSCI also describes the collective message exchange among interacting Web Services, thus providing a global, message-oriented view of the interactions between the participating services.

The intent of this JSR is Micro WSCI achieves this by defining a layer on top of the existing J2ME Web Service stack. This layer implements the required ‘observable’ behavior of a choreographed Web Service on the J2ME Device, relative to the message exchange it must support.

This JSR will be under public review until 28th April 2003. To contribute, send an email to jsr-213-comments at

JSR-214 Micro BPSS for J2ME Devices

ebXML (Electronic Business using eXtensible Markup Language), is a modular suite of specifications that enables enterprises to conduct business over the Internet. It creates a standard method to exchange business messages, conduct trading relationships, communicate data in common terms and define and register business processes among electronic business processes. One core part of the ebXML suite of specifications is the Business Process Specification Schema (BPSS), which is an XML format defining a business process.

The exchange of information between two processes requires each process to know the other process’s supported business collaborations, the other process’s role in the collaboration, and the technology details about how the other process sends and receives messages. In some cases, it is necessary for the two participating processes to reach agreement on some of the details. The way each party can exchange information, in the context of a business collaboration, can be described by a Collaboration-Protocol Profile (CPP). The agreement between the Parties can be expressed as a Collaboration-Protocol Agreement (CPA). This is collectively referred to Collaboration-Protocol Profile/Agreement (CPP/A). This CPP/A is also part of the ebXML suite.

The goal of this JSR is to provide a standard set of APIs for representing and manipulating Collaboration Profile and Agreement information described by ebXML CPPA (Collaboration Protocol Profile/Agreement) documents on J2ME Devices. These APIs will define a way to construct and manipulate various profile information corresponding to the CPP/A.

This JSR will be under public review until 28th April 2003. To contribute, send an email to jsr-214-comments at

Community Reviews

JSR-168 Portlet Specification

Portlets are web components much like Servlets specifically designed to be aggregated in the context of a composite page. Usually, many Portlets are invoked to in the single request of a Portal page. Each Portlet produces a fragment of a page that it s combined with the fragments of other Portlets, composed within the Portal page. The Portlet specification will define the different components for Portal Computing, their interaction, lifecycle and semantics. These components will comprise -but they will not be restricted to-: Portlets, Deployment descriptor, Portlet APIs. In addition, APIs for vendor extensions, APIs for security, user customization and layout management will be considered. The Portlet specification will be based on the Servlet specification. It is envisioned that the developer API will be similar to the Servlet API.

The Community review closes on 19th May 2003. JCP members may access the Community review at

Public Review Specifications

JSR-185 Java Technology for the Wireless Industry

This is an umbrella JSR that covers the use and relation of various other JSR’s relating to the wireless industry. In particular, this JSR describes and overall architecture of how the various proposed wireless API technologies work together to form a complete handset solution for the wireless services industry. This JSR was updated with a list of other JSR’s under the umbrella of this JSR and provides a reference to the Java Wireless Architecture Roadmap

The Public review closes on 15th May 2003. You may access the public review at

JSR-195 Information Module Profile

This JSR will define a J2ME profile targeting embedded networked devices that wish to support a Java runtime environment similar to the Mobile Information Device Profile (MIDP) version 1.0, but that do not provide the graphical display capabilities required by MIDP 1.0. The Information Module Profile (IMP) will be a strict subset of MIDP 1.0, where the APIs relating to GUI functionality (the LCDUI) are simply removed. Functionality not already present in MIDP 1.0 is not anticipated or desired.

The Public review closes on 22nd May 2003. You may access the public review at

Proposed Final Draft Specifications

JSR-152 Java Server Pages 2.0 Specification and
Another link concerning Java Server Pages 2.0 Specification

Java Server Pages are a set of API’s used to develop web pages that contain small pieces of Java code. When a web server receives a request for such a page, it calls a JSP engine to execute the Java code within the page. This execution results in dynamic and personalized content. Currently JSP 1.2 is the accepted and most recent standard. This JSR specifies the next revision to the JSP specifications. Significant changes relate to ease of use and development of JSP pages for non-technical resources (like web page designers), an implementation of an expression language similar to JavaScript for JSP page authoring and miscellaneous changes and improvements to the API and implementation based on community feedback.

This is the third revision of the final draft.

JSR-154 Java Servlet 2.4 Specification

Java servlets are small Java programs that run when invoked from a web server. They are usually responsible for producing dynamic web pages or performing some business logic on the server side. This JSR is an update the to Servlet specification 2.3 (JSR-53 with additions and enhancements in the area of Servlet deployment, security and programming model.

This is the third revision of the final draft.

JSR-179 Location API for J2ME

This specification will define a generic interface for positioning. As such, this API shall work with most positioning methods, such as GPS or E-OTD, but the core API will not expose features that pertain to one technology only (however it may allow extensions for specific purposes).

JSR-151 Java 2 Platform, Enterprise Edition 1.4 Specification and

J2EE 1.4 is the Enterprise Edition of version 1.4 of the Java platform, and thus will be built on J2SE 1.4. This JSR will not itself define any new APIs, rather it will enumerate APIs defined in other JSRs or through the JCP maintenance process.A major goal of this JSR is to add support for Web Services. J2EE 1.4 intends to use the following JSR’s as part of its release.

For basic web services support

  • JSR-109 (Web Services)
  • JSR-101 (JAX-RPC)
  • JSR-67 (JAXM)
  • JSR-93 (JAXR)

New capabilities provided by

  • JSR-77 (management)
  • JSR-88 (deployment API)
  • JSR-115 (J2EE Authorization SPI)
  • JSR-56 (JNLP)

Enhanced APIs that are in J2EE 1.3

  • JSR-112 (J2EE Connector Architecture 2.0)
  • JSR-152 (JSP 1.3)
  • JSR-154 (Servlet 2.4)
  • JSR-153 (EJB 2.1)
  • JSR-9XX (JAXP 1.2 – XML Schema support)
  • JSR-9XX (JMS 1.1 – queue/topic unification)

This is the third revision of this specification.


What do you think of the JCP? What do you think of the current JSR’s? Do you have any suggestions for this column? Feel free to write to me at

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Latest Posts

Related Stories