我准备了一个示例驼峰休息网络应用程序。当我在Glassfish中部署它时,我收到的错误如下所示。如何解决这个问题?
<ns1:XMLFault xmlns:ns1="http://cxf.apache.org/bindings/xformat"><ns1:faultstring xmlns:ns1="http://cxf.apache.org/bindings/xformat">java.lang.ClassCastException: com.sun.jersey.core.spi.factory.ResponseImpl cannot be cast to org.apache.cxf.jaxrs.impl.ResponseImpl</ns1:faultstring></ns1:XMLFault>
答案 0 :(得分:0)
您正在部署的WAR文件可能包含Apache CXF。 Jersey和CXF都是JAX-RS实现,Jersey内置于Glassfish。在类路径上有两个JAX-RS实现会导致问题。
假设您正在使用Maven,请尝试使用JAX-RS API或Jersey上的依赖项替换您的CXF依赖项。将依赖项标记为<scope>provided</scope>
以避免将其包含在WAR文件中,因为Glassfish将提供它。