This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
We have an couple of EAR's deployed on WSAD - WAS 5.1 Test Environment. There are some common utility jars (total size is more than 1 GB) that are required by all of the EAR's and so we created a shared library for these jars and made references for each of these EAR's to this shared library. Now the applications are running fine with classloader mode as PARENT_FIRST (sinc PARENT_LAST is not working) and WAR classloader policy as MODULE).
Now we are trying to consume a web service using AXIS 1.2 Final (an open-source java soap toolkit). AXIS uses its own version of saaj, log4j, commons-logging etc. jars and I hope WAS runtime has its own version of these jars. Now if I deploy my web application (that uses AXIS) and distribute my AXIS jars either in WEB-INF\lib or at the ear level then I must give classloader mode as PARENT_LAST and WAR classloader policy as APPLICATION/MODULE otherwise I am getting the famous error "org.w3c.dom does not implement ... etc. etc." similiar exception.
Now there is contradiction of classloader mode setting for making my AXIS web module work and for the making use of shared library jars.
Does shared libary jars are loaded by separate classloader called Shared Libary Classloader which is above application classloader. If so how to make shared libary jars loaded by my application instead of getting them loaded by a separate classloader like Shared Libary Classloader.