微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

深入dom4j使用selectSingleNode方法报错分析

本篇文章是对dom4j使用selectSingleNode方法报错进行了详细的分析介绍,需要的朋友参考下

我有一段代码,使用dom4j 正则表达式解析gml , 代码如下:

List featureMembers= root.selectNodes("featureMember");

发生以下异常:

java.lang.NoClassDefFoundError: org/jaxen/JaxenException

    at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230)

    at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:207)

    at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:164)

    at com.geoway.spatial.util.LocationUtils.parseTDTResponseDocument(LocationUtils.java:56)

    at com.geoway.spatial.util.LocationUtils.queryTDTWFS(LocationUtils.java:33)

    at com.geoway.spatial.service.impl.TDTLocationServiceImpl.getLocationByName(TDTLocationServiceImpl.java:28)

    at com.geoway.spatial.service.impl.LocationAdapter.getLocationByName(LocationAdapter.java:31)

    at com.geoway.spatial.service.impl.LocationAdapter.test(LocationAdapter.java:48)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

    at java.lang.reflect.Method.invoke(Method.java:597)

    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:297)

    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:250)

    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:144)

    at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapablebeanfactory.java:350)

    at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.initializeBean(AbstractAutowireCapablebeanfactory.java:1329)

    at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.doCreateBean(AbstractAutowireCapablebeanfactory.java:471)

    at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory$1.run(AbstractAutowireCapablebeanfactory.java:409)

    at java.security.AccessController.doPrivileged(Native Method)

    at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.createBean(AbstractAutowireCapablebeanfactory.java:380)

    at org.springframework.beans.factory.support.Abstractbeanfactory$1.getobject(Abstractbeanfactory.java:264)

    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:217)

    at org.springframework.beans.factory.support.Abstractbeanfactory.doGetBean(Abstractbeanfactory.java:261)

    at org.springframework.beans.factory.support.Abstractbeanfactory.getBean(Abstractbeanfactory.java:185)

    at org.springframework.beans.factory.support.Abstractbeanfactory.getBean(Abstractbeanfactory.java:164)

    at org.springframework.beans.factory.support.DefaultListablebeanfactory.preInstantiateSingletons(DefaultListablebeanfactory.java:429)

    at org.springframework.context.support.AbstractApplicationContext.finishbeanfactoryInitialization(AbstractApplicationContext.java:729)

    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381)

    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)

    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)

    at org.springframework.web.context.ContextLoaderListener.contextinitialized(ContextLoaderListener.java:45)

    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3934)

    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4429)

    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)

    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)

    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)

    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:987)

    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:909)

    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:495)

    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206)

    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:314)

    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)

    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)

    at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)

    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)

    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)

    at org.apache.catalina.core.StandardService.start(StandardService.java:516)

    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)

    at org.apache.catalina.startup.Catalina.start(Catalina.java:583)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

    at java.lang.reflect.Method.invoke(Method.java:597)

    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)

    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

Caused by: java.lang.classNotFoundException: org.jaxen.JaxenException

    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)

    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)

    at java.lang.classLoader.loadClassInternal(ClassLoader.java:320)

    ... 56 more

根据异常,发现少了一个类:org.jaxen.JaxenException  这个类存在jaxen.jar包中,原因可想而知了!在路径下加入这个jar包即可。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐