5.2.7. AppContext
AppContext is a system class, which stores references to certain common components for each application block in its static fields:
-  
ApplicationContextof Spring Framework. -  
Set of application properties loaded from
app.propertiesfiles. -  
ThreadLocalvariable, storing SecurityContext instances. -  
Collection of application lifecycle listeners (
AppContext.Listener). 
When the application is started, AppContext is initialized using loader classes, specific for each application block:
-  
Middleware loader –
AppContextLoader -  
Web Client loader –
WebAppContextLoader -  
Web Portal loader –
PortalAppContextLoader -  
Desktop Client loader –
DesktopAppContextLoader 
AppContext can be used in the application code for the following tasks:
-  
Getting the application property values, stored in
app.propertiesfiles in case they are not available through configuration interfaces. -  
Passing
SecurityContextto new execution threads, see User Authentication. -  
Registering listeners, triggered after full initialization and before termination of the application, for example:
AppContext.addListener(new AppContext.Listener() { @Override public void applicationStarted() { System.out.println("Application is ready"); } @Override public void applicationStopped() { System.out.println("Application is closing"); } });WarningPlease note that the recommended way to run code on the application startup and shutdown is using Application Lifecycle Events.