Site Tools


Smart Card Solution

User Manual

JavaCard API Samples

Java Card Specification

Knowledge Sharing


8.5 RMIService Class

The RMIService class implements the Java Card RMI protocol and processes the RMI access commands described earlier: SELECT FILE and INVOKE. It performs the function of the transport layer for Java Card RMI commands on the card.

The RMIService object maintains a list of remote objects that have been returned during the current applet selection session. It enforces the following rules for the lifetime of the remote object references:

  • A remote reference is valid only when the INVOKE command is processed by the RMIService instance that returned the reference.
  • A remote reference is valid with any applet instance in the package of the applet instance that returned it.
  • A remote reference is valid as long as at least one applet instance within the same package has been active at all times since the point in time when the remote reference was returned.
  • A valid remote object cannot be garbage collected during the lifetime of the remote reference.

In addition, a remote object reference descriptor of an object must only be returned from the card if it is exported. See the class javacard.framework.service.CardRemoteObject. Otherwise, an exception is thrown. See the class javacard.framework.service.RMIService.

javacard/jcre/8.5_rmiservice_class.txt · Last modified: 2017/05/13 04:07 (external edit)