JSRs: Java Specification Requests
JSR 68: J2METM Platform Specification
This JSR has been Withdrawn
The following updates have been made to the original JSR:
Specification Lead: Oracle
Name of Spec Lead: Roger Riggs
E-Mail Address: roger.riggs
Telephone Number: +1 781 442 0539
Specification Lead: Sun Microsystems, Inc.
Name of Spec Lead: Jonathan Courtney
E-Mail Address: jonathan.courtney
Telephone Number: +1 408 276 7398
Original Java Specification Request (JSR)
Section 1. Identification
Submitting Participant: Sun Microsystems, Inc.
Name of Contact Person: Dr. Peter Madany
E-Mail Address: firstname.lastname@example.org
Telephone Number: +1 408 343 1445
Section 2: Request
2.1 Please describe the proposed Specification:
This specification will define the next major revision of the JavaTM 2 Micro Edition Platform.
2.2 What is the target Java platform? (i.e., desktop, server, personal, embedded, card, etc.)
2.3 What need of the Java community will be addressed by the proposed specification?
This JSR will revise the J2ME platform specification. In particular it will add the concept of J2ME Building Blocks.
2.4 Why isn't this need met by existing specifications?
This revision will simplify the creation of new J2ME profiles.
2.5 Please give a short description of the underlying technology or technologies:
The J2ME platform defines the Java platform for small devices.
J2ME devices are targeted at a wide range of uses, so there is high variability between the needs of different devices. To allow for application portability, J2ME "Profiles" are developed for particular categories of devices. For example, the Mobile Information Device Profile (MIDP) targets devices such as cell phones. The intention is that application developers target particular profiles, and their applications are then portable across all devices that implement the given profile.
Profiles must often provide functionality that is already present in J2SE. In order to allow developers to benefit from their knowledge of J2SE it is often desirable that J2ME profiles should derive this functionality from existing J2SE APIs, rather than defining new APIs. In general it is desirable that Profiles share similar sets of J2SE functionality, rather than having each Profile have a distinct set of the same APIs.
Therefore this revision of the J2ME platform will introduce the concept of "Building Blocks". A Building Block defines an API derived from J2SE (or J2EE) APIs for use in J2ME. For example, a Building Block might define a specific set of classes from java.io. These Building Blocks will then be available for Profile Expert Groups to use as part of new J2ME Profiles.
It is expected that there will be a wide variety of Building Blocks. Because different Profiles have different needs there may sometimes be different sized Building Blocks that represent larger or smaller sets of J2SE functionality.
2.6 Is there a proposed package name for the API Specification? (i.e., javapi.something, org.something, etc.)
2.7 Does the proposed specification have any dependencies on specific operating systems, CPUs, or I/O devices that you know of?
2.8 Are there any security issues that cannot be addressed by the current security model?
2.9 Are there any internationalization or localization issues?
These will be addressed in individual Building Blocks.
2.10 Are there any existing specifications that might be rendered obsolete, deprecated, or in need of revision as a result of this work?
Over time the notion of Building Blocks will subsume the existing notion of a J2ME configuration.
Section 3: Contributions
3.1 Please list any existing documents, specifications, or implementations that describe the technology. Please include links to the documents if they are publicly available.