Third-party JARs loaded by system class loader

(CR #397598) If you specify third-party JARs in the CLASSPATH or BOOTCLASSPATH in setenv.sh, they are loaded by the EAServer system class loader. If any class within these JARs calls getClassLoader, it returns null. If any class within these JARs calls JNI, the JVM ignores this and searches only sun.boot.library.path. The problem is that the third-party JARs are typically installed outside the EAServer installation. In EAServer 5.5, JARs cannot be loaded by the server class loader, unless they are in $JAGUAR/java/lib, $JAGUAR/html/classes, or $JAGUAR/java/classes.

To work around this problem, put third-party JARs in the $JAGUAR/java/classes directory, and add “com.sybase.jaguar.server.java.classes=third _party_library.jar" to $JAGUAR/Repository/Server/Jaguar.props. This allows the server class loader, instead of the system class loader, to load the third-party JARs.