NoClassDefFoundError:org / w3c / dom / ElementTraversal
我按照本指南安装了Jetty 7并为IdP Shibboleth配置了它正确: https ://wiki.shibboleth.net/confluence/display/SHIB2/IdPJetty7Prepare
但是,当我尝试启动Jetty时,我收到此错误:
NoClassDefFoundError: org/w3c/dom/ElementTraversal
要解决此问题,我需要安装ElementTraversal依赖项并将其包含在我的类路径中 。
但我怎么能做到这一点? 我是否需要下载此类[ElementTraversal.class]或.jar文件? 我可以放在哪里? 在JETTY_HOME
? 我需要导出CLASSPATH
吗?
有人能帮我吗?
非常感谢!
看起来ElementTraversal是xml-apis-2.10.0.jar
一部分,它应该与您的Shibboleth安装一起提供。
因此,如果您遵循这些说明,您还应该遵循以下步骤:
通过创建目录JETTY_HOME / lib / endorsed /来支持Xerces和Xalan,并将IdP源endorsed /目录中包含的.jar文件复制到新创建的目录中。
只要您适当地复制了所有jar文件,它应该没问题。 我的猜测是你错过了那一步 – 或者只是在名字中复制了带有Xalan或Xerces的jar文件,而错过了其他两个。
在我的情况下,通过将xml-apis版本从1.3.04更改为1.4.01来解决问题。
BTW,版本2.10.0在Maven Central中不存在(我很好奇Jon Skeet在哪里找到它)。