public class SessionStorageExample1 extends Application
When the application exits, session state for the application's
mainFrame component tree is saved using the SessionStorage
save
method, and when the
application is launched it's restored with the restore
method. This is done
by overriding the Application startup
and shutdown
methods:
@Override protected void shutdown() { getContext().getSessionStorage().save(mainFrame, "session.xml"); } @Override protected void startup() { ApplicationContext ctx = getContext(); ctx.setVendorId("Sun"); ctx.setApplicationId("SessionStorageExample1"); // ... create the GUI rooted by JFrame mainFrame ctx.getSessionStorage().restore(mainFrame, "session.xml"); }Error handling has been ommitted from the example.
Session state is stored locally, relative to the user's
home directory, using the LocalStorage
save
and load
methods. The startup
method must set the
ApplicationContext
vendorId
and applicationId
properties to ensure that the correct
local directory
is selected on
all platforms. For example, on Windows, the full pathname
for filename "session.xml"
is:
${userHome}\Application Data\${vendorId}\${applicationId}\session.xmlWhere the value of
${userHome}
is the the value of
the Java System property "user.home"
.
Note: this example is intended to show how the SessionStorage API works and what it can do. Applications subclasses, like SingleFrameApplication, save/restore session state automatically, so you don't have to.
application.SessionStorage#save
,
application.SessionStorage#restore
,
ApplicationContext.getSessionStorage()
,
ApplicationContext#setApplicationId
,
ApplicationContext#setVendorId
Application.ExitListener
Constructor | Description |
---|---|
SessionStorageExample1() |
Modifier and Type | Method | Description |
---|---|---|
static void |
main(java.lang.String[] args) |
|
protected void |
shutdown() |
Called when the application
exits . |
protected void |
startup() |
Responsible for starting the application; for creating and showing
the initial GUI.
|
addPropertyChangeListener, addPropertyChangeListener, firePropertyChange, firePropertyChange, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
addExitListener, end, exit, exit, getContext, getExitListeners, getInstance, getInstance, hide, initialize, launch, quit, ready, removeExitListener, show
protected void startup()
Application
This method is called by the static launch
method,
subclasses must override it. It runs on the event dispatching
thread.
startup
in class Application
Application.launch(java.lang.Class<T>, java.lang.String[])
,
Application.initialize(java.lang.String[])
,
Application.shutdown()
protected void shutdown()
Application
exits
.
Subclasses may override this method to do any cleanup
tasks that are neccessary before exiting. Obviously, you'll want to try
and do as little as possible at this point. This method runs
on the event dispatching thread.public static void main(java.lang.String[] args)