JAX-RS 2:类路径和应用程序部署中的Jaxrs api的多个版本因类强制转换异常而失败

时间:2018-11-26 12:02:02

标签: java web-services jax-rs jersey-2.0 weblogic12c

任何帮助将不胜感激。 我正在使用JAX-RS-2 Web服务,我们正在使用weblogic 12c服务器。该服务器的类路径中已经包含“ jersey-core-1.18.jar”,我无法删除它,因为它已被其他一些应用程序使用。现在,由于我使用的是JAX-RS 2 jar,因此出现如下所示的类强制转换异常 java.lang.ClassCastException:无法将com.sun.jersey.core.impl.provider.entity.StringProvider转换为javax.ws.rs.ext.MessageBodyReader。 我知道com.sun.jersey.core.impl.provider.entity.StringProvider来自'jersey-core-1.18.jar'。 我也有weblogic.xml,如下所示。即使在此weblogic加载StringProvider之后,它也会给出错误。 如何停止weblogic加载此类? 在过去两天中,我一直坚持不懈地提供任何帮助。

<weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app">
    <container-descriptor>
        <prefer-web-inf-classes>false</prefer-web-inf-classes>
        <prefer-application-packages>
        <package-name>com.sun.research.ws.wadl.*</package-name>
        <package-name>javax.ws.rs.*</package-name>
        <package-name>org.glassfish.*</package-name>
        <package-name>org.jvnet.hk2.*</package-name>
        </prefer-application-packages>
    </container-descriptor>
</weblogic-web-app> 

0 个答案:

没有答案