How Classes Are Found
When you are choosing where to put your classes on the server classpath, as described in
Adding Classes to the Server Classpath, consider the effect of the possible locations on the loading order. Here is the order in which
Integration Server searches the various locations relative to one another:
1. watt.server.prepend.classes
2. Software AG_directory \ Integration Server_directory \instances\instanceName\bin\ini.cnf
Specifically, the application.classpath property in the ini.cnf file. The application.classpath property typically specifies classes in the following directories, in this order:
Integration Server_directory \lib
Software AG_directory \common\lib
3. Software AG_directory \ Integration Server_directory \instances\instanceName\lib\jars
4. Software AG_directory \ Integration Server_directory \instances\instanceName\lib\jars\custom
5. Software AG_directory \ Integration Server_directory \lib\jars
6. Software AG_directory \ Integration Server_directory \lib\jars\custom
7. Software AG_directory \ Integration Server_directory \instances\instanceName\packages\packageName\code\jars\static
8. watt.server.append.classes
If you have two or more copies of a class, whether it is a single class file or is a class in a jar file, and multiple locations for the class appear in the server classpath, Integration Server always loads the instance of the class that appears first in the server classpath. Integration Server never uses other instances of the same class that appear later in the server classpath. A scenario where this is significant is when different versions of a third-party jar file are on the server classpath. Integration Server always uses the version that comes first in the server classpath.
If more than one package has jar files in its code\jars\static directory, the jar files will be added to the server classpath in alphabetical order, by package name. For example, jar files in PackageA\code\jars\static will be loaded before jar files in PackageB\code\jars\static.
You can view the Integration Server classpath on the About page in Integration Server Administrator.