Class loading and update detection settings

Use this page to configure use of class loaders by an application.

To view this administrative console page, click Applications > Application Types > WebSphere enterprise applications > application_name > Class loading and update detection.

Attention: If an application is running, changing an application setting causes the application to restart. On stand-alone servers, the application restarts after you save the change. On multiple-server products, the application restarts after you save the change and files synchronize on the node where the application is installed. To control when synchronization occurs on multiple-server products, deselect Synchronize changes with nodes on the Console preferences page.
Supported configurations: 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.

Override class reloading settings for web and EJB modules

Specifies whether to enable class reloading when application files are updated.

Select Override class reloading settings for web and EJB modules to set reloadEnabled to true in the deployment.xml file for the application. If an application's class definition changes, the application server run time stops and starts the application to reload application classes.

Reloading settings in the deployment.xml file override the reloading settings for all web and EJB modules that can be defined in ibm-web-ext.xmi and META-INF/ibm-application-ext.xmi files. The following table shows the reload settings in the deployment.xml file based on the setting of reloadEnabled.

Table 1. JSP and servlet class reloading . The following table shows the reload settings in the deployment.xml file based on the setting of reloadEnabled.
deployment.xml ibm-web-ext.xmi ibm-web-ext.xmi (reloadingEnabled) ibm-web-ext.xmi (jspAttributes name="reloadEnabled" Change in JSP Change in servlet class
reloadEnabled = false reloadInterval set or not true true Translate, recompile, reload loading new class
reloadEnabled = false   false true Translate, recompile, reload NO loading of new class
reloadEnabled = false   true false NO translate, recompile, reload Loading new class
           
reloadEnabled = true reloadInterval > 0 false or true false NO translation or reload of JSP Loading new class at specified interval
reloadEnabled = true   false or true true Translation and reload JSP Loading new class
reloadEnabled = true reloadInterval = 0 false or true false NO translation or reload of JSP NO loading of new class
reloadEnabled = true reloadInterval = 0 false or true true Translation and reload of JSP NO loading of new class
  • reloadEnabled = false in the deployment.xml file means that the properties in the ibm-web-ext.xmi file will be in effect.( whatever is set for reloadingEnabled in the ibm-web-ext.xmi file.
  • reloadEnabled = true in the deployment.xml AND reloadInterval = value of polling interval set to a value greater than 0 by using the administrative console, causes reloading in time interval specified by reloadInterval.
  • reloadEnabled = true in the deployment.xml AND reloadInterval= 0 causes no class reloading.
Note:
  • If you want to ensure that the reloading of any servlet class is disabled no matter what is set in the ibm-web-ext.xmi file, then make sure the reloadInterval in the ibm-web-ext.xmi file is set to 0.
  • If jspAttributes name="reloadEnabled" is not present in the ibm-web-ext.xmi file, then the reloadingEnabled value becomes the operative reload action.
Information Value
Data type Boolean
Default false

Polling interval for updated files

Specifies the number of seconds to scan the application's file system for updated files. The default is the value of the reloading interval attribute in the IBM extension (META-INF/ibm-application-ext.xmi) file of the EAR file.

This Polling interval for updated files setting is the same as the Reload interval in seconds field on the application installation and update wizards.

To enable reloading, specify a value greater than zero (for example, 1 to 2147483647). To disable reloading, specify zero (0). The range is from 0 to 2147483647.

The reloading interval attribute takes effect only if class reloading is enabled.

Information Value
Data type Long
Units Seconds
Default 3

Class loader order

Specifies whether the class loader searches in the parent class loader or in the application class loader first to load a class. The standard for development kit class loaders and WebSphere® Application Server class loaders is Classes loaded with parent class loader first. By specifying Classes loaded with local class loader first (parent last), your application can override classes contained in the parent class loader, but this action can potentially result in ClassCastException or LinkageErrors if you have mixed use of overridden classes and non-overridden classes.

The options are Classes loaded with parent class loader first and Classes loaded with local class loader first (parent last). The default is to search in the parent class loader before searching in the application class loader to load a class.

For your application to use the default configuration of Jakarta Commons Logging in WebSphere Application Server, set this application class loader mode to Classes loaded with parent class loader first. For your application to override the default configuration of Jakarta Commons Logging in WebSphere Application Server, your application must provide the configuration in a form supported by Jakarta Commons Logging and this class loader mode must be set to Classes loaded with local class loader first (parent last). Also, to override the default configuration, set the class loader mode for each web module in your application so that the correct logger factory loads.

Information Value
Data type String
Default Classes loaded with parent class loader first

WAR class loader policy

Specifies whether to use a single class loader to load all WAR files of the application or to use a different class loader for each WAR file.

The options are Class loader for each WAR file in application and Single class loader for application. The default is to use a separate class loader to load each WAR file.

Information Value
Data type String
Default Class loader for each WAR file in application