NoClassDefFoundError的:组织/ W3C / DOM / ElementTrave

2019-05-12 06:16发布

我安装码头7和配置了该导向下列它correcty面向IDP Shibboleth的 : https://wiki.shibboleth.net/confluence/display/SHIB2/IdPJetty7Prepare

但是,当我尝试启动码头我得到这个错误:

NoClassDefFoundError: org/w3c/dom/ElementTraversal

要解决这个问题,我需要安装ElementTraversal依赖,包括它在我的类路径中
但是,我怎么能做到这一点? 我是否需要下载此Class [ElementTraversal.class]或.jar文件? 并在那里我可以把它? 在JETTY_HOME ? 我需要导出的CLASSPATH

有人能帮我吗?
非常感谢!

Answer 1:

它看起来像ElementTraversal是部分xml-apis-2.10.0.jar应已提供您的Shibboleth的安装。

所以,如果你是以下这些说明你也应该遵循此步骤:

通过创建目录JETTY_HOME / lib目录/核准/和复制的.jar列入认可/目录到新创建的目录中的IdP源文件认可的Xerces和Xalan。

只要你适当地复制所有jar文件,它应该没问题。 我的猜测是,你错过了这一步-或许只有在名称与复制或的Xalan的Xerces的jar文件,并且错过了另外两个。



Answer 2:

在我的情况下,问题得到了解决,通过改变XML的API版本,从04年3月1日至1.4.01。

顺便说一句,版本2.10.0不Maven的中央(我很好奇在哪里乔恩斯基特找到它)存在。



Answer 3:

在文件中添加这种,解决了依赖性:

 <dependency>
      <groupId>xml-apis</groupId>
      <artifactId>xml-apis</artifactId>
      <version>1.4.01</version>
 </dependency>


文章来源: NoClassDefFoundError: org/w3c/dom/ElementTraversal