org.javacardforum.management
Interface DefaultApplet


public interface DefaultApplet

This interface identifies an applet that shall be installed as a default applet in the card.
The actual JavaCard 2.1 spec does not define in an interoperable way how to specify the default applet in the card. It is up to the individual JCRE implementation how or if they implement this feature.
Therefor we define in a first attempt this interface. It indicates that an Applet implementing this interface can be the default applets in the card.
However there are several point that need further specification.

  • An Applet that implements this interface is the default applet in the card.
  • The last applet installed into the card that implements the default applet interface is the default applet
  • If an Applet that implements this interface is deleted (logical or physical) there is no default applet any longer in the card and after a card reset no applet is selected
  • There is only one applet instance aloud to implement this interface
  • if an applet that implements the default applet is in a state where it is not selectable there is no applet selected after the card reset

  • ....
    Its a bit tricky to define this correctly, think about an Applet that implements this interface but you create a second instance of this applet in the card, which instance is now the default applet. (---> the last applet installed)
    This plays maybe also an important role in the contactless world where you have no time to perform a select applet statement.
    And it would make it easier to bootstrap the card, especially if the cards must work in an existing environment.