Try OpenEdge Now
skip to main content
BP Server Developer's Guide
Dynamic class loader for adapters
 

Dynamic class loader for adapters

If a class that is already loaded, is modified, or is moved to a new location, then the class needs to be loaded again. This is called dynamic class loading. BP Server provides dynamic class loading for adapters with the following features:
*Supports Application Class Loader and Adapter Class Loader.
*Class files can be loaded from multiple locations.
*Class files can also be loaded from JAR files.
*By default, application class loader is supported. In application class loader, all the adapters of an application are loaded by the same class loader.
The check "if class is modified" is based on the last modified time of the class file. If the class is in a JAR file, then the check is based on the last modified time of the JAR file as well as the last modified time of the class file.
BP Server allows loading class files from specific locations as well as from JAR files.
*Locations common to all applications
*OEBPS_HOME\ebmsapps
*OEBPS_HOME\ebmsapps\common\classes
*OEBPS_HOME\ebmsapps\common\lib
*Locations specific to an application
*OEBPS_HOME\ebmsapps\<application name>\lib
In general, BPM Events can load the class files placed directly in the following locations:
*OEBPS_HOME\ebmsapps
*OEBPS_HOME\ebmsapps\common\classes
The classes from JAR files are loaded from the following locations:
*OEBPS_HOME\ebmsapps\<application name>\lib
*OEBPS_HOME\ebmsapps\common\lib
The ebmsapps\common\lib location is used to search for JAR files as well as class files, but the location ebmsapps\<application name>\lib is used to search only for the JAR files.
* Searching class files
* Controlling dynamic class loader
* Modifying the JAR files
* Loading adapter classes
* Dynamic class loader APIs