Re: java.lang.NoClassDefFoundError: org/jaxen/NamespaceContext

Rolf Lear <[email protected]> Mon, 16 Jul 2012 06:36:04 -0400
Newsgroups gmane.comp.java.jdom.general
Message-ID <[email protected]>
Hi Elías

The most likely cause of this is because you do not have the Jaxen jar 
in your classpath. You need the Jaxen 1.1.3 (in the JDOM Download zip) 
or Jaxen 1.1.4 jar (from the jaxen website).

Check your eclipse build path to make sure you have jaxen in it.

Rolf

On 16/07/2012 3:30 AM, Elías Manchón López wrote:
> Hello Folks,
>
> I'm using jdom2 in my eclipse project. I want to search with xpath in 
> my xml file two nodes and I'm using the next code:
>
> XPathFactory factory = XPathFactory.instance();
> XPathExpression<Element> exprErrorCode = 
> factory.compile("/descendant::error_code", Filters.element());
> Element error_code = (Element) exprErrorCode.evaluateFirst(_doc);
>
> if(error_code != null){
>   errorCode = Integer.parseInt(error_code.getText());
>   XPathExpression<Element> exprErrorDesc = 
> factory.compile("/descendant::error_description", Filters.element());
>   Element error_desc = (Element) exprErrorDesc.evaluateFirst(_doc);
>     if(error_desc != null)
>       errorDesc = error_desc.getText();
> }
>
> When I debug the program I get the next error:
>
> java.lang.NoClassDefFoundError: org/jaxen/NamespaceContext
>     at java.lang.ClassLoader.defineClass1(Native Method)
>     at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
>     at 
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>     at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
>     at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
>     at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
>     at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>     at java.security.AccessController.doPrivileged(Native Method)
>     at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
>     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
>     at 
> org.jdom2.xpath.jaxen.JaxenXPathFactory.compile(JaxenXPathFactory.java:82)
>     at org.jdom2.xpath.XPathFactory.compile(XPathFactory.java:281)
>     at 
> com.ej2DomiturIntegration.xml.XMLCommImpl.setErrorsFromXML(XMLCommImpl.java:263)
>     at 
> com.ej2DomiturIntegration.xml.XMLCommImpl.getConnResponse(XMLCommImpl.java:308)
>     at 
> com.ej2DomiturIntegration.xml.XMLCommImplTest.testOpenConnection(XMLCommImplTest.java:23)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>     at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke(Method.java:601)
>     at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
>     at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>     at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
>     at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
>     at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
>     at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>     at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>     at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>     at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>     at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>     at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>     at 
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
>     at 
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>     at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
>     at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
>     at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
>     at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: java.lang.ClassNotFoundException: org.jaxen.NamespaceContext
>     at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
>     at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>     at java.security.AccessController.doPrivileged(Native Method)
>     at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
>     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
>     ... 40 more
>
> Can somebody help me, please?
>
> Thanks in advance

_______________________________________________
To control your jdom-interest membership:
http://www.jdom.org/mailman/options/jdom-interest/[email protected]