My app is on a WebSphere Application Server Base 5.1.1.4), AIX
The probleme is: everything works fine (during one week, one day or one hour) until I get a ClassNotFoundException.
My application tries to load classes with a Class.forName(className) instruction every time it gets an XML message (the XML message contains the string className). All the classes of my app are in a jar (in the WEB-INF/lib folder of my ear).
Most of the Class.forName are successful, but some failed I dont know why. I traced all the package com.ibm.ws.classloader, check the classloading in verbose mode but I cannot resolve the problem.
When I restart the server, all is normal until a ClassNotFoundException on a random (never the same class) class appears.
Here is the trace.log:
[6/24/05 11:49:43:487 CEST] 3c30e3a2 > UOW= source=com.ibm.ws.classloader.CompoundClassLoader org=IBM prod=WebSphere component=Application Server loadClass name=com.ingdirect.afp.util.xmlmapper.ReqGetMessagesByCifXMLMapper this=com.ibm.ws.classloader.CompoundClassLoader@258463a4 [6/24/05 11:49:43:488 CEST] 3c30e3a2 > UOW= source=com.ibm.ws.classloader.CompoundClassLoader org=IBM prod=WebSphere component=Application Server findClass name=com.ingdirect.afp.util.xmlmapper.ReqGetMessagesByCifXMLMapper this=com.ibm.ws.classloader.CompoundClassLoader@258463a4 [6/24/05 11:49:43:489 CEST] 3c30e3a2 R UOW= source=SystemErr org=IBM prod=WebSphere component=Application Server
*** 2005/06/24 11:49:43.488: java.lang.ClassNotFoundException: com.ingdirect.afp.util.xmlmapper.ReqGetMessagesByCifXMLMapper at com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.java(Compiled Code)) at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java(Compiled Code)) at java.lang.ClassLoader.loadClass(ClassLoader.java(Compiled Code)) at com.ingdirect.afp.util.xmlmapper.MessageHeaderXMLMapper.createMessageBody(MessageHeaderXMLMapper.java(Compiled Code)) at com.ingdirect.afp.util.xmlmapper.MessageXMLMapper.startElement(MessageXMLMapper.java(Compiled Code)) at org.xml.sax.helpers.XMLReaderAdapter.startElement(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.xml.sax.helpers.XMLReaderAdapter.parse(Unknown Source) at com.ingdirect.afp.util.xmlmapper.MessageXMLMapper.parse(MessageXMLMapper.java(Compiled Code)) at com.ingdirect.afp.mq.server.MQXMLCommand.handleClientRequest(MQXMLCommand.java(Compiled Code)) at com.ingdirect.afp.mq.server.MQServerListener.run(MQServerListener.java(Compiled Code))
thanks for help
Claude Moore
Ranch Hand
Joined: Jun 24, 2005
Posts: 151
posted
0
Try and replace your JAR from WEB-INF/lib into WAS's classpath. I've experienced similar problems with WAS 5.0, even if in my case the problem was about marshaling and not classpath...
Regards, Claude.
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to
run our stuff on 16 servers instead of 3.