Network Deployment (Distributed operating systems), v8.0 > Administer applications and their environment > Deploy and administering enterprise applications > Update enterprise application files > Hot deployment and dynamic reloading
Change or adding application files
We can change or add application files on application servers without having to stop the server and start it again.
The following note applies to the xmi file references in this topic:
For IBM extension and binding files, the .xmi or .xml file name extension is different depending on whether you are using a pre-Java EE 5 application or module or a Java EE 5 or later application or module. An IBM extension or binding file is named ibm-*-ext.xmi or ibm-*-bnd.xmi where * is the type of extension or binding file such as app, application, ejb-jar, or web. The following conditions apply:
- For an application or module that uses a Java EE version prior to version 5, the file extension must be .xmi.
- For an application or module that uses Java EE 5 or later, the file extension must be .xml. If .xmi files are included with the application or module, the product ignores the .xmi files.
However, a Java EE 5 or later module can exist within an application that includes pre-Java EE 5 files and uses the .xmi file name extension.
The ibm-webservices-ext.xmi, ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi, ibm-webservicesclient-ext.xmi, and ibm-portlet-ext.xmi files continue to use the .xmi file extensions.
Restriction: The hot deployment and dynamic reloading function is not supported when the product is running on these operating systems. The JAR files within the associated Java Development Kit (JDK) are memory mapped. If these JAR files are updated by the hot deployment and dynamic reloading functionality when they are being used by the JVM, the files become inconsistent, which results in an application server crash. When you make changes to an application on these operating systems, do not use the hot deployment and dynamic reloading functionality. Instead, restart the application to reflect the changes.
There are several changes that you can make to deployed application files without stopping the server and starting it again.
See Ways to update enterprise application files and determine whether hot deployment is the appropriate way for you to update the application files. Other ways are easier and hot deployment is appropriate only for experienced users. We can use the update wizard of the administrative console to make the changes without having to stop and restart the server.
The following table lists the changes that you can make by manipulating an application file on the server where the application is deployed. The table also states whether you use hot deployment or dynamic reloading to make the changes.
Available changes to deployed application files. Available changes using hot deployment or dynamic reloading.
Change Hot deployment Dynamic reloading Update an existing application on a running server by providing a new EAR file. Yes Yes Add a new application to a running server. Yes No Remove an existing application from a running server. Yes No Change or add files to existing EJB or web modules. Yes No Change the application.xml file for an application. Not applicable Yes Change the ibm-app-ext.xmi file for an application. Not applicable Yes Change the ibm-app-bnd.xmi file for an application. Not applicable Yes Change a non-module Jar file contained in the EAR file. Yes Yes
Procedure
- Update an existing application on a running server by providing a new EAR file.
Reinstall an updated application using the administrative console or the wsadmin $AdminApp install command with the -update option.
Both reinstallation methods enable you to update an existing application using any of the other steps listed in this file, including changing classes, adding modules, removing modules, changing modules, or changing metadata files. The application reinstallation methods detect the changes in the application and prompt you for additional binding data that might be needed to install the application. The reinstallation process automatically stops and restarts the application on the appropriate servers.
- Add a new application to a running server.
Install an application using the administrative console or the wsadmin install command.
- Remove an existing application from a running server.
Stop the application and then uninstall it from the server. Use the administrative console to stop the application and then uninstall it. Or use the stopApplication attribute of the AdminControl object with wsadmin.sh and then run the uninstall command.
- Change or add files to existing EJB or web modules.
- Update the application files in the application_root location.
- Restart the application.
Use the administrative console to restart the application. Or use the startApplication and stopApplication attributes of the AdminControl object with wsadmin.sh.
- Change the application.xml file for an application.
Restart the application. Automatic reloading will not detect the change. Use the administrative console to restart the application. Or use the startApplication and stopApplication attributes of the AdminControl object with wsadmin.sh.
- Change the ibm-app-ext.xmi file for an application.
Restart the application. Automatic reloading will not detect the change. Use the administrative console to restart the application. Or use the startApplication and stopApplication attributes of the AdminControl object with wsadmin.sh.
- Change the ibm-app-bnd.xmi file for an application.
Restart the application. Automatic reloading will not detect the change. Use the administrative console to restart the application. Or use the startApplication and stopApplication attributes of the AdminControl object with wsadmin.sh.
- Change a non-module Jar file contained in the EAR file.
- Update the non-module Jar file in the application_root location.
- If automatic reloading is not enabled, restart the application. Use the administrative console to restart the application. Or use the startApplication and stopApplication attributes of the AdminControl object with wsadmin.sh.
If automatic reloading is enabled, you do not need to take further action. Automatic reloading will detect the change.
Hot deployment and dynamic reloading
Install enterprise applications using wsadmin.sh
Start applications using wsadmin.sh
Stop applications using wsadmin.sh
Uninstall enterprise applications using wsadmin.sh