WM IS Classloader model?

Hi,

We have classes that we want to be loaded by the package level classloader (i guess we put those in code/jars of the package). But we also have classes that we want to be loaded by the server classloader. Where do we put them? We need this because we have singletons that create threads and we want to limit the number of threads.



Can you please describe the WM classloader model?  What does the WM classloader model look like (in comparison with tomcat/wl)?

regards,

Ajit

Put the jars in the IntegrationServer/lib/jars/ directory, then restart the IS.

If you go to the “about” page on the server administrator (located on the top right side), you will see these jars added to the server classpath.

You can share classes, with only one instance created by using IS package dependencies. You can set these from Developer by doing right click Open on the package and clicking the add dependency button. Enter the package name and you can use . for the version.

MySharedPackage
/code/jars/myutils.jar

MyPackage1 dependent on MySharedPackage
services that reference myuyils.jar

MyPackage2 dependent on MySharedPackage
services that reference myuyils.jar

This kind of construct keeps stuff off the server classpath, allows you to fully install your stuff via package replication. The only issue is that if you reload MySharedPackage the package classloader gets thrown away and I’m not sure if those dependent packages are automatically reloaded.

HTH,
Fred