WebSphere Message Broker, Version 8.0.0.7 Operating Systems: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

See information about the latest product version

JavaCompute node classloading using a configurable service

Details alternative configurable Java™ classloader options and the precedence order of each type.

The JavaCompute node loads and runs a Java class defined as the Java class property on the node. Normally, this class is deployed, along with any other required classes, in a Java archive (JAR) file contained in the broker archive (BAR) file that is used to deploy the flow containing the JavaCompute node.

Any Java classes deployed in this way are loaded by an execution group-wide classloader. It is possible to override this behavior by using the JavaClassLoader configurable service property on the node.

The classloader defined by the JavaClassLoader configurable service has a list of JAR files, defined by the includedDeployedJars property, which it will own and use. Whenever these JAR files are deployed, the configurable service classloader receives the JAR files and uses them for resolving classes. The JAR files are no longer available to the execution group classloader, and any node using that classloader will not have access to any classes contained in those JAR files.

The configurable service classloader first searches all the deployed JAR files it has received for a required class. If a required class cannot be found, it defers to the shared classloader. The shared classloader looks in a set of directories on the broker machine and loads any JAR files found. It can be used to install any required JAR files that do not need to be repeatedly deployed, such as client libraries that the JavaCompute nodes need to use. For more details, see Java shared classloader. This mechanism can be overridden by setting the sharedJarPath property on the configurable service in order to use a specified directory to find installed JAR files, rather than the shared classes directories.

If the required class cannot be found in any of the deployed JAR files, or in the JAR files installed in the shared classes directories, a classloader containing all of the broker supplied classes is checked (for example: this classloader contains the jplugin2.jar), followed by the classpath, and then finally the Java virtual machine (JVM) system classloader.

For information about how to create a JavaClassLoader configurable service, see mqsicreateconfigurableservice command. Properties of the JavaClassLoader configurable service are defined in JavaClassLoader configurable service.

Notices | Trademarks | Downloads | Library | Support | Feedback

Copyright IBM Corporation 1999, 2016Copyright IBM Corporation 1999, 2016.

        
        Last updated:
        
        Last updated: 2016-05-23 14:48:17


Concept topicConcept topic | Version 8.0.0.7 | bk58220_