The WebApp is the result of the generation process. If the model you created is profiled then a unique version of a WebApp will be created as required. The WebApp contains all of the structural data required to run the application.
At execution time, the WebApp is read-only, because it is shared across multiple WebAppAccess instances. Sharing the WebApp give us the ability to not have to regenerate a new one if a request come in for the same WebApp with the same profile requirements.
The components that are contained on a WebApp are pages, methods, action lists, variables, linked Java objects, linked models, system event listeners, and error handlers.
When a WebAppAccess is instantiated for the first time the runtime modifiable components of the WebApp are copied from the WebApp to the WebAppAccess object. These components are variables, linked models and linked Java objects. This allows the WebAppAccess to modify those items without corrupting the shared WebApp object.
Linked Java objects are stored within variables as an object type.
The WebAppAccess has a reference to the WebApp and can be retrieved by using the getWebApp method.
WebApp webApp = webAppAccess.getWebApp();
Parent topic: WebAppAccess