weblogic中的类强制转换异常

时间:2012-11-14 08:21:43

标签: java exception casting jersey weblogic

我有一个使用泽西jars的Web应用程序(WAR文件)。现在我正在尝试部署这个我正在获得类强制转换异常(某些bootstrap servlet使用泽西)..在分析中我发现weblogic本身有jersey jars在共同\ modules..and我的网络应用程序有不同版本的泽西罐子。现在,如果我删除common / modules jersey jar,那么我的web应用程序就已部署。我想知道如何让我的web应用程序使用自己版本的jersey jar,以便在不删除常用/模块jar的情况下部署它。 PS我的.war文件没有weblogic.xml,weblogic正在动态生成它。

1 个答案:

答案 0 :(得分:5)

获取WebLogic动态生成的weblogic.xml并修改它以添加:

<container-descriptor>
   <prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>

现在确保在war文件中包含此weblogic.xml并重新部署该应用程序。

将prefer-web-inf-classes设置为true will give preference到应用程序的WEB-INF目录中的类。

prefer-web-inf-classes可能无法一直有效。如果您使用的是10.3.4+的WebLogic版本,请使用remove prefer-web-inf-classes设置并使用prefer-application-packages代替。另请查看有关WebLogic中类加载如何工作的this视频。