Contents Previous Next Index

Preface


Java Card™ technology combines a portion of the Java™ programming language with a runtime environment optimized for smart cards and related, small-memory embedded devices. The goal of Java Card technology is to bring many of the benefits of Java language programming to the resource-constrained world of smart cards.

This document is a specification of the Java Card™ platform, version 2.2.1 Runtime Environment (“Java Card Runtime Environment” or “Java Card RE”). A vendor of a Java Card technology-enabled device provides an implementation of the Java Card RE. A Java Card RE implementation within the context of this specification refers to a vendor’s implementation of the virtual machine (VM) for the Java Card platform (“Java Card virtual machine” or “Java Card VM”), the Java Card Application Programming Interface (API), or other component, based on the Java Card technology specifications. A “reference implementation” is an implementation produced by Sun Microsystems, Inc. Application software written for the Java Card platform is referred to as a Java Card technology-based applet (“Java Card applet” or “card applet”).

Who Should Use This Specification?

This specification is intended to assist implementers of the Java Card RE in creating an implementation, developing a specification to extend the Java Card technology specifications, or in creating an extension to the Runtime Environment for the Java Card platform. This specification is also intended for Java Card applet developers who want a greater understanding of the Java Card technology specifications.

Before You Read This Specification

Before reading this guide, you should be familiar with the Java programming language, the Java Card technology specifications, and smart card technology. A good resource for becoming familiar with Java technology and Java Card technology is the Sun Microsystems, Inc. website, located at:

http://java.sun.com

How This Specification Is Organized

Chapter 1, "Introduction,” gives an overview of the information contained in this specification.

Chapter 2, "Lifetime of the Java Card Virtual Machine,” defines the lifetime of the Java Card virtual machine.

Chapter 3, "Java Card Applet Lifetime,” defines the lifetime of an applet.

Chapter 4, "Logical Channels and Applet Selection,” describes how the Java Card RE handles applet selection.

Chapter 5, "Transient Objects,” describes the properties of transient objects.

Chapter 6, "Applet Isolation and Object Sharing,” describes applet isolation and object sharing.

Chapter 7, "Transactions and Atomicity,” describes the functionality of atomicity and transactions.

Chapter 8, "Remote Method Invocation Service,” describes the server-side (card-side) functionality of the Remote Method Invocation (RMI) feature of Java Card platform, version 2.2.1.

Chapter 9, "API Topics,” describes API functionality required of a Java Card RE but not completely specified in the Application Programming Interface for the Java Card™ Platform, Version 2.2.1.

Chapter 10, "Virtual Machine Topics,” describes virtual machine specifics.

Chapter 11, "Applet Installation and Deletion,” provides an overview of the Applet Installer and Java Card RE required behavior.

Chapter 12, "API Constants,” provides the numeric value of constants that are not specified in the Application Programming Interface for the Java Card™ Platform, Version 2.2.1.

"Glossary,” provides definitions of selected terms used in this specification.

Related Books

References to various documents or products are made in this guide. You should have the following documents available:

Typographic Conventions

Typeface
Meaning
Examples
AaBbCc123
The names of commands, files, and directories; on-screen computer output
 
Edit your .login file.
Use ls -a to list all files.
% You have mail.
AaBbCc123
What you type, when contrasted with on-screen computer output
 
% su
Password:
AaBbCc123
Book titles, new words or terms, words to be emphasized
 
 
Command-line variable; replace with a real name or value
Read Chapter 6 in the User’s Guide.
These are called class options.
You must be superuser to do this.
 
To delete a file, type rm filename.

Accessing Sun Documentation Online

The Java Developer Connectionsm web site enables you to access Java™ platform technical documentation on the Web:

http://developer.java.sun.com/developer/infodocs/

Sun Welcomes Your Comments

We are interested in improving our documentation and welcome your comments and suggestions. You can email your comments to us at:

docs@java.sun.com

 


Contents Previous Next Index Runtime Environment Specification for the Java Card Platform
Specification, 2.2.1