classpath - JDOM + Jaxen + Websphere 7 = java.lang.NoClassDefFoundError: org.jaxen.BaseXPath -


i use jdom in webapp project. works fine. want add stuff using xpath, if try work xpath, exception:

com.ibm.ws.webcontainer.servlet.servletwrapper service srve0068e: uncaught exception created in 1 of service methods of servlet myservlet in application myprojectear. exception created : java.lang.noclassdeffounderror: org.jaxen.basexpath     @ java.lang.j9vminternals.verifyimpl(native method)     @ java.lang.j9vminternals.verify(j9vminternals.java:72)     @ java.lang.j9vminternals.initialize(j9vminternals.java:134)     @ java.lang.class.fornameimpl(native method)     @ java.lang.class.forname(class.java:136)     @ org.jdom.xpath.xpath.newinstance(xpath.java:126)     @ org.jdom.xpath.xpath.selectnodes(xpath.java:337)     [..]  caused by: java.lang.classnotfoundexception: org.jaxen.basexpath     @ java.net.urlclassloader.findclass(urlclassloader.java:421)     @ com.ibm.ws.bootstrap.extclassloader.findclass(extclassloader.java:150)     @ java.lang.classloader.loadclass(classloader.java:652)     @ com.ibm.ws.bootstrap.extclassloader.loadclass(extclassloader.java:90)     @ java.lang.classloader.loadclass(classloader.java:618)     @ com.ibm.ws.classloader.protectionclassloader.loadclass(protectionclassloader.java:62)     @ com.ibm.ws.classloader.protectionclassloader.loadclass(protectionclassloader.java:58)     @ com.ibm.ws.classloader.compoundclassloader.loadclass(compoundclassloader.java:540)     @ java.lang.classloader.loadclass(classloader.java:618)     ... 35 more 

the jaxen.jar in classpath, , org.jaxen.basexpath class there fine. why websphere not finding it? works other libraries have there. when googling found this, says has conflicting version somewhere , should make sure jars web app directory have precedence. in eclise' built path configuration set web app libraries above websphere library (only src dir above web app libs), did not change anything. unfortunatelly did not understand part ear seems important...?

update: in meantime this gave me new clue. found on websphere's administration console classpath , list jars considered class loaders. these quite number , searched them little grep , unzip -l magic , figured file /opt/ibm/websphere/portalserver/wcm/prereq.wcm/wcm/shared/app/jdom.jar contains jdom (without jaxen stuff). maybe jdom jar loaded, jaxen in incompatible version loaded lib directory?

additionally found in websphere's administration console "parent first/last" setting application, grayed out! can't switch parent last :-(.

what can find , fix problem?


Comments

Popular posts from this blog

c# - SharpSVN - How to get the previous revision? -

c++ - Is it possible to compile a VST on linux? -

url - Querystring manipulation of email Address in PHP -