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

The Great J2ME API Rundown, by J2ME API

Some of the more frequently asked questions about the various forums for J2ME are, "What is J2ME?" and "Is <so-and-so-product> a part of J2ME?" So this month, in an attempt to reduce the number of FAQs - and therefore offer a valuable service to search engines, intelligent agents, and the Java community - JDJ presents the Great J2ME API Rundown!

Here is where you'll find all the APIs that fall beneath J2ME's umbrella, and the packages within those APIs. In future issues, we'll include the API rundown in a summarized form and attempt to update the information whenever Sun moves the goalposts around.

Connected, Limited Device Configuration (CLDC) - Version 1.0
CLDC contains the following packages:

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:

Connected Device Configuration (CDC) - Version 0.2
CDC contains the following packages:

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 at:

Mobile Information Device Profile - Version 1.0
MIDP builds on CLDC and contains the following packages:

java.lang CLDC, plus an additional exception
java.util CLDC, plus timer facilities
javax.microedition.io networking support based upon 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 environment
The products page for MIDP is at:

Foundation Profile - Version 0.2
The Foundation Profile builds on CDC and contains the following packages:

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 at:

PersonalJava Specification - Version 1.2a
PersonalJava will eventually be superseded by the Personal Profile, but for now the specification contains the following packages:

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 & exception classes
com.sun.util for handling timer events
For more information on the PersonalJava Application Environment:

Java TV - Version 1.0
Java TV contains the following packages (in addition to PersonalJava):

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 manage ment 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 JavaTV page at:

Java Embedded Server - Version 2.0
JES contains the following packages:

com.sun.jes.service.http servlet/resource registrations
com.sun.jes .http basic authentication
service.http.auth.basic 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 the Java Embedded Server at:

Java Card - Version 2.1.1
Java Card contains the following packages:

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 at:

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.