HomeDigital EditionSys-Con RadioSearch Java Cd
Advanced Java AWT Book Reviews/Excerpts Client Server Corba Editorials Embedded Java Enterprise Java IDE's Industry Watch Integration Interviews Java Applet Java & Databases Java & Web Services Java Fundamentals Java Native Interface Java Servlets Java Beans J2ME Libraries .NET Object Orientation Observations/IMHO Product Reviews Scalability & Performance Security Server Side Source Code Straight Talking Swing Threads Using Java with others Wireless XML

Some of the more commonly asked questions on the various forums for J2ME seem to be "What is J2ME?" and "Is <so-and-so-product> a part of J2ME?" Here is where you will find all the APIs that fall beneath J2ME's umbrella, and the packages you will find within those APIs.

Connected, Limited Device Configuration (CLDC) - Version 1.0
java.io    input and output through data streams
java.lang     fundamental classes
java.util    collections, data and time facilities, other utilities
javax.microedition.io     generic connections classes

You can find more information on CLDC at the following:

Connected Device Configuration(CDC) - Version 0.2
java.io    input and output
java.lang     fundamental classes
java.lang.ref     reference object classes
java.lang.reflect     reflective information about classes
java.math    BigInteger support
java.net     networking support
java.security    security framework
java.security.cert     parsing and management of certificates
java.text    used for handling text, dates, numbers and messages
java.text.resources    contains a base class for locale elements
java.util    collections, date/time, miscellaneous functions
java.util.jar    reading Jar files
java.util.zip     reading Zip files
javax.microedition.io     connections classes

Look for more CDC information here:

Mobile Information Device Profile - Version 1.0
java.lang     CLDC, plus an additional exception
java.util     CLDC, plus timer facilities javax.microedition.io    networking support based on the CLDC framework
javax.microedition.lcdui    for user interfaces for MIDP applications
javax.microedition.rms    persistent data storage
javax.microedition.midlet     defines applications and interactions between app and envronment

The products page for MIDP is here:

Foundation Profile - Version 0.2
java.io     see CDC
java.lang    see CDC
java.lang.ref    see CDC
java.lang.reflect    see CDC
java.math     see CDC
java.net     see CDC
java.security     see CDC
java.security.cert     see CDC
java.security.acl     access control lists
java.security.interfaces     interfaces for generating keys
java.security.spec     key specifications, and algorithm parameter specifications
java.text     see CDC
java.text.resources    see CDC
java.util     see CDC
java.util.jar     see CDC
java.util.zip     see CDC
javax.microedition.io     see CDC

The profile products page is here:

J2ME RMI Profile (JSR #66)
This profile interoperates with J2SE RMI, and provides Java platform to Java platform remote method invocation for Java devices

J2ME Game Profile
This is a proposed Micro Edition specification, so nothing is yet defined. According to the JCP home page for JSR #134 (the Game Profile), the following areas will be covered:

1. 3D Modeling and Rendering for Games 2. 3D Physics Modeling for Games
3. 3D Character Animation for Games
4. 2D Rendering and Video Buffer Flipping for Games
5. Game Marshalling and Networked Communication
6. Streaming Media for Games
7. Sound for Games
8. Game Controllers
9. Hardware Access for Games

PDA Profile (JSR#75)
The PDA profile will provide UI and storage APIs for small, resource-limited handheld devices.

PersonalJava Specification - Version 1.2a
java.applet     full support from JDK1.1.8
java.awt    modified from JDK1.1.8

  • Note: there is an extra method for PJ for double-buffering in java.awt.Component
    java.awt.datatransfer    full support
    java.awt.event    full support
    java.awt.image     full support
    java.awt.peer    modified
    java.beans     full support
    java.io     modified
    java.lang    modified
    java.lang.reflect     modified
    java.math     optional - may or may not be supported
    java.net    modified
    java.rmi     optional
    java.rmi.dgc     optional
    java.rmi.registry     optional
    java.rmi.server    optional
    java.security     modified
    java.security.acl     unsupported java.security.cert     some classes required, some optional
    java.security.interfaces    required if code signing is included
    java.security.spec    required if code signing is included
    java.sql    optional
    java.text     full support
    java.text.resources    modified
    java.util     modified
    java.util.jar     required if code signing is included
    java.util.zip     modified

    Additional PersonalJava specific packages are:
    com.sun.awt     for mouseless environments
    com.sun.lang     a couple of error and exception classes
    com.sun.util    for handling timer events

    PersonalJava will eventually be superseded by the Personal Profile. For more information on the PersonalJava Application Environment:

    Java TV - Version 1.0
    javax.tv.carousel     access to broadcast file and directory data
    javax.tv.graphics     root container access and alpha blending
    javax.tv.locator     referencing data and resources
    javax.tv.media     controls and events for management of real-time media
    javax.tv.media.protocol     access to generic streaming data in a broadcast
    javax.tv.net    IP datagram access
    javax.tv.service     service information access
    javax.tv.service.guide     supporting electronic program guides
    javax.tv.service.navigation     services and hierarchical service information navigation
    javax.tv.service.selection    select a service for presentation
    javax.tv.service.transport    information about transport mechanisms
    javax.tv.util     creating and managing timer events
    javax.tv.xlet    communications interfaces used by apps and the app manager

    Get off that couch and check out the Java TV page at the following:

    Java Embedded Server - Version 2.0
    com.sun.jes.service.http    servlet/resource registrations
    com.sun.jes.service.http.auth.basic     http basic authentication
    com.sun.jes.service.http.auth.users     management of users and their access
    com.sun.jes.service.timer    for handling timer events
    org.osgi.framework    consistent model for app. dev., supports dev. and use of services
    org.osgi.service.device     detection of devices
    org.osgi.service.http     http access of resources
    org.osgi.service.log     logging facility

    You can find more information on Embedded Server on the following site:

    Java Card - Version 2.1.1
    java.lang     fundamental classes
    javacard.framework    core functionality of a JC applet
    javacard.security     security framework
    javacardx.crypto     extension package with security classes and interfaces

    Next time you use that American Express Blue card, you may want to know how it works, so take a look here:

    All Rights Reserved
    Copyright ©  2004 SYS-CON Media, Inc.
      E-mail: [email protected]

    Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.