【问题标题】:Class loading issue with Eclipse RAP and WebLogic 12.2.1.3Eclipse RAP 和 WebLogic 12.2.1.3 的类加载问题
【发布时间】:2017-12-21 16:43:34
【问题描述】:

在 WebLogic 12.2.1.3 上部署 Eclipse RAP 战争文件时,我们遇到以下错误;

java.lang.LinkageError:加载程序约束违规:加载程序之前为名为“org/aopalliance/aop/Advice”的不同类型启动加载

在执行一些分析后,我们发现问题是由于 WebLogic 12.2.1.3 附带 oracle_common\modules 中的 org.glassfish.hk2.external.aopalliance-repackaged.jar,这与 com.springsource.org.aopalliance_1 冲突。 0.0.jar,在我们的 WAR 文件的 WEB-INF\plugins 目录中。

我们已经尝试了一些方法来解决这个问题,但到目前为止都没有成功;

从 oracle_common\modules 中删除了 org.glassfish.hk2.external.aopalliance-repackaged.jar(WebLogic 部署后自行关闭)

从 WAR 文件中删除 com.springsource.org.aopalliance_1.0.0.jar(WebLogic 启动,但不在 WAR 文件中部署包)

更新了 WAR 文件中的 weblogic.xml;

<container-descriptor>
  <prefer-web-inf-classes>false</prefer-web-inf-classes>
  <prefer-application-packages>
    <package-name>org.aopalliance.*</package-name>
  </prefer-application-packages>
</container-descriptor>

将com.springsource.org.aopalliance_1.0.0.jar复制到WAR的WEB-INF\lib文件夹下,上面的weblogic.xml修改

我们将不胜感激任何其他更改的建议。

非常感谢

迈克

【问题讨论】:

    标签: weblogic12c eclipse-rap


    【解决方案1】:

    尝试更新您的 war 文件中的 launch.ini,将 osgi.parentClassloader 和 osgi.contextClassLoaderParent 的值设置为 ext :-

    osgi.parentClassloader=ext
    osgi.contextClassLoaderParent=ext
    

    干杯

    【讨论】:

    • 感谢 Rod,这似乎已经解决了!非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-23
    • 2019-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-30
    • 1970-01-01
    相关资源
    最近更新 更多