Use hot deployment and dynamic reloading
You can change applications and their contents without stopping and restarting the application server that hosts the application. This process is called hot deployment and dynamic reloading. Hot deployment is the process of adding new application components to an application server while the application server is running. Dynamic reloading refers to the ability of an application to integrate changes while it is running. Dynamic reloading applies to these changes:
- Changes to the implementation of a component of an application. For example, changes to the implementation of a servlet.
- Changes to the settings of the application. For example, changes to the deployment descriptor for a Web module.
If the application you are updating is deployed on a server that has its application class loader policy set to SINGLE, you might not be able to dynamically reload your application. In this case, restart the server after you update the application.
To update an application without stopping and restarting the application server, follow these steps:
Locate the expanded application files. The application files are located in the directory that you specify when you install the application. If you do not specify a target directory, the application files are located in the default target directory, /QIBM/UserData/WebASE51/ASE/instance/installedApps/cell/appEARfile, where instance is the name of your instance, cell is the name of your cell, and appEARfile is the name of the application EAR file.
If you cannot locate the expanded application files, look up the application binaries location with the administrative console.
- In the administrative console topology tree, expand Applications and click Enterprise Applications.
- Click the name of the application that you want to update.
- The value specified in the Application Binaries field is the location of the expanded application files.
The variable application_root represents the directory that contains the expanded application files.
Locate application metadata files. The metadata files include the deployment descriptors, such as web.xml, and application.xml; the bindings files, such as ibm-web-bnd.xmi and ibm-app-bnd.xmi; and the extensions files, such as ibm-web-ext.xmi and ibm-app-ext.xmi. Metadata XML files for an application can be loaded from either of these locations:
- The application EAR file directory: application_root/META-INF.
- The application deployment directory: /QIBM/UserData/WebASE51/ASE/instance/config/cells/cell/applications
/appEARfile/deployments/appName/META-INF, where instance is the name of your instance, cell is the name of your cell, appEARfile is the name of the application EAR file, and appName is the name of the deployed application.The value of the useMetadataFromBinary attribute, which is specified when you install an application, determines which location is used. To determine which location is used, follow these steps:
- In the administrative console topology tree, expand Applications and click Enterprise Applications.
- Click the name of the application that you want to update.
- If the Use Metadata From Binaries field is selected, the metadata files are loaded from the application EAR file directory. If it is not selected, the metadata files are loaded from the application deployment directory.
The variable metadata_root represents the location of the metadata files for the specified application or module.
(Optional) Examine the values specified for Reload Enabled and Reload Interval on the settings page for your enterprise application. For more information about these settings, see Enterprise application settings.
If reloading of application files is enabled and the reload interval is greater than zero (0), the application's files are reloaded after the application is updated. For Web modules such as servlets and JavaServer Pages (JSP) files, a Web container reloads a Web module only when the IBM extension reloadingEnabled in the ibm-web-ext.xmi file is also set to true. You can set reloadingEnabled to true when you edit your Web module's extended deployment descriptors with an assembly tool.
Change or add components or modules. For more information, see these topics:
Some of these changes specify that restart the application before the changes take effect. If restart the application, see Manage installed applications for instructions.