繁体   English   中英

IBM Websphere portlet 类加载器问题

[英]IBM Websphere portlet classloader issue

我目前正在开发一个使用 commons-collections jar 文件的 portlet,并且收到 NoSuchMethodError。 要解决此问题,我需要将 WAR 文件的类加载器从 PARENT_FIRST 更改为 PARENT_LAST(在 application.xml 文件中)。

但是,当我这样做时,我的 portlet 将不会启动,并且当我登录到控制台时,它会显示消息“该 portlet 被暂时禁用”。 如果我将类加载器改回 PARENT_FIRST,那么它将再次启动,但随后我得到 NoSuchMethodError。

有人对如何解决此问题有任何建议吗?

我不知道怎么做,但是今天当我收到“Portlet 暂时禁用”时,我开始在日志中收到错误消息。 I was getting a java.lang.LinkageError which was down to the fact that I had the servlet-api-2.5.jar and a jaxb jar which was conflicting with webshpere j2ee.jar. 一旦我删除了这些依赖项并将类加载器设置为 PARENT_LAST,它似乎可以正常工作。 似乎很多人都面临着类似的问题。 下面的链接也很有

您还没有提供任何日志...但是,在将应用程序设置为运行PARENT_LAST时要注意的最重要的事情之一是,您的应用程序没有与任何可能与这些类冲突的系统级类捆绑在一起由 WebSphere Portal 提供。 例如,属于 Portlet 规范或 JavaEE 规范的类。

@MTH,

请尝试将 commons-collections 添加为共享库。 有关其他人如何使用共享库支持的示例,请参见此处 [1]。 这将为您提供步骤,只需为您需要从 WAS 的类加载器覆盖/替换的 jars 执行此操作

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

谢谢,暗淡

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM