Подтвердить что ты не робот

NoClassDefFoundError: org/w3c/dom/ElementTraversal

Я установил Jetty 7 и настроил его для IdP Shibboleth в соответствии с этим руководством: https://wiki.shibboleth.net/confluence/display/SHIB2/IdPJetty7Prepare

Но когда я пытаюсь запустить Jetty, я получаю эту ошибку:

NoClassDefFoundError: org/w3c/dom/ElementTraversal

Чтобы решить эту проблему, мне нужно установить зависимость ElementTraversal и включить ее в свой classpath.
Но как я могу это сделать? Нужно ли загружать этот класс [ElementTraversal.class] или файл .jar? и где я могу его разместить? в JETTY_HOME? Мне нужно экспортировать CLASSPATH?

Может кто-нибудь мне помочь?
Большое вам спасибо!

4b9b3361

Ответ 1

Похоже, что ElementTraversal является частью xml-apis-2.10.0.jar, который должен был быть снабжен установкой Shibboleth.

Итак, если вы следовали этим инструкциям, вы также должны были следовать этому шагу:

Endorse Xerces и Xalan, создав каталог JETTY_HOME/lib/endorsed/и скопируйте файлы .jar, включенные в исходный каталог IdP source/directory во вновь созданный каталог.

Пока вы копируете все файлы jar соответствующим образом, все должно быть в порядке. Я предполагаю, что вы пропустили этот шаг - или, возможно, только скопировали файлы jar с Xalan или Xerces в имени и пропустили два других.

Ответ 2

В моем случае проблема была исправлена ​​путем изменения версии xml-apis с 1.3.04 до 1.4.01.

Кстати, версия 2.10.0 не существует в Maven Central (мне любопытно, где его нашел Джон Скит).