I am having a problem with getting jdom 1.1 to load from a servlet. Here is the error I get.
java.lang.VerifyError: (class: com/signer/notification/NotificationProcessor, method: createTestEnactCMSResponse signature: (Ljava/lang/String
Lorg/jdom/Document
Incompatible argument to method
I am running under WebSphere 5.1, and developing using RAD 6.0.1
I have an ear with EJB and Wars.
Since I am using a later version of jdom, xerces, jaxen,... than what runs under WebSphere, I believe my problem is a classloading problem.
I have read a number of postings regarding this issue and they all seem to point the same way - replace the jars in WebSphere's application lib, or bundle the jars in the ear and change the class loader to parent_last. Can't do the first and the second just doesn't seem to be working.
I have added jdom and the other jars at the root of the ear file and have set the classloader mode to parent_last for both the ear and the wars. I have also tried setting the war classloader policy to both module and application to no avail.
Since the servlet seemed to be getting the old jdom, I also added the jars to the WEB-INF/lib folder of the wars and the META-INF/Manifest.MF of the wars shows a dependancy on the added jars. All to no avail.
I need to deliver to the customer a single ear file, and cannot replace the files that WebSphere uses - which I think is bad anyway.
I read the following link -
http://www.technicalfacilitation.com/get.php?link=classloading - and believe I have set in place the proper steps.
One thing I did try that looks suspicious is I added a META-INF/Manifest.MF in the ears META-INF folder - and referenced the jars under the Class-Path. However, when I open this with the Jar Dependancy Editor there is a warning that the file is not associated with a project.
Any assistance with this is greatly appreciated.