Java News from Thursday, September 21, 2006

Sun has submitted JSR-306, Towards a new version of the JCP, to the Java Community Process. According to the JSR,

This JSR proposes several changes to the JSPA and to the JCP process document. The changes are both of a streamlining nature:

as well as of a potentially more fundamental nature:

During the execution of the JSR the Spec Lead and Expert Group may decide to add additional items and may also decide to drop items if it is deemed that a reasonable consensus cannot be reached or in order to complete the work of this JSR in a reasonable time frame.

Comments are due by October 2.


Motorola has submitted JSR-307, Network Mobility and Mobile Data API, to the Java Community Process. According to the JSR,

This JSR provides two APIs: one to establish packet data sessions with particular attributes such as bandwidth, latency, QoS or destination APN (for GPRS) and another for providing a framework for managing network mobility for mobile platforms and applications on those platforms. Data control and network mobility control are linked together because many use cases for the data capabilities in this JSR also include operations that need information about the available networks (to determine what services to offer to the user).

Mobile Data API
Entering into a wider range of applications and application services available on a mobile device, not all applications are able to operate best with the default type of data session which is available today. This API provides means to request sessions over a particular radio transport (if more than one is available), obtain bandwidth guarantees for the session, and update sessions as available transport capabilities may change. The API expects that when applications do not specify a radio transport for use, that the platform will select the transport best able to support the requested session characteristics.

Additional APIs in the framework provide for notifications of changes in session attributes, along with mechanisms to change the attributes of an active session. For devices with multiple data transport mechanisms (such as cellular and WLAN), the API provides a means to select a particular transport for the session. As an example of the attributes which may be specific (for a GPRS session), this would include APN, minimum and requested bandwidth, traffic class (conversational, streaming, interactive, background) and latency limits.

Network Mobility API
This will provide a framework for managing network mobility for mobile platforms and applications on those platforms. Applications will be able to manage and monitor the features, attributes, and capabilities of available wireless networks (wireless Voice, Data and related services) as well as identifying wired connections to services (accessing the internet through a USB connection bridged in a PC for example). The mobility API will provide a means for an application to set both application specific and device-wide preferences for which networks to attach to, obtain information about the networks which are currently available for attachment, attach/detach to a specific network and control preferences for different protocols or transports which may be able to provide a service. Preferences might include selections such as preferring a VoIP telephony session instead of a cellular telephony session, or preferring to use a particular WLAN network when it is available.

Comments are due by October 2.