Проблема загрузчика классов портлета IBM Websphere - PullRequest
0 голосов
/ 01 июня 2011

В настоящее время я работаю над портлетом, использующим файл jar commons-collection и получаю NoSuchMethodError. Чтобы решить эту проблему, мне нужно изменить загрузчик классов моего файла WAR с PARENT_FIRST на PARENT_LAST (в файле application.xml).

Однако, когда я делаю это, мой портлет не запускается и при входе в консоль выводит сообщение «Портлет временно отключен». Если я изменю загрузчик классов обратно на PARENT_FIRST, он снова запустится, но затем я получу NoSuchMethodError.

У кого-нибудь есть предложения по устранению этой проблемы?

Ответы [ 3 ]

2 голосов
/ 02 июня 2011

Я не уверен, как, но сегодня я начал получать сообщения об ошибках в журналах, когда я получал «Портлет временно отключен». Я получал java.lang.LinkageError, которая была связана с тем, что у меня был servlet-api-2.5.jar и jaxb jar, который конфликтовал с webshpere j2ee.jar. Как только я удалил эти зависимости и установил загрузчик классов на PARENT_LAST, он, кажется, работает правильно. Кажется, что многие люди сталкиваются с похожими проблемами. Ссылка ниже также полезна http://forum.springsource.org/showthread.php?33663-dispatcher-servlet-quot-not-a-servlet-class-quot-in-websphere

0 голосов
/ 24 сентября 2012

Вы не предоставили никаких журналов ... но, тем не менее, одна из самых важных вещей, на которые следует обратить внимание при настройке приложения на запуск PARENT_LAST, заключается в том, что ваше приложение не связано ни с какими классами системного уровня, которые может вступать в конфликт с теми, которые предоставляются WebSphere Portal. Например, классы, которые относятся к спецификации портлета или спецификации JavaEE.

0 голосов
/ 01 июня 2011

@ MTH,

попробуйте добавить общие коллекции в качестве общей библиотеки. Смотрите здесь пример того, как другие использовали поддержку разделяемых библиотек [1]. Это даст вам шаги, просто сделайте это для jar-файлов, которые вам нужно переопределить / заменить из загрузчика классов WAS

[1] http://portals.apache.org/jetspeed-2/deployguide/deploying-jetspeed-to-websphere.html#section_4_2

спасибо, тускнеет

...