我已经公开了一个Web服务但是当客户端尝试使用该服务时,我可以看到服务器日志中存在ClassCastException
异常。并且请求未到达Web服务。当我尝试调用Web服务时,它正在SOAP UI
。
java.lang.ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl cannot be cast to com.sun.xml.bind.api.JAXBRIContext.
我尝试过使用这两种解决方案
ClassCastException: Cannot be cast to com.sun.xml.internal.bind.v2.runtime.reflect.Accessor
然而,在我的weblogic
文件夹中,我找不到冲突的jar。
答案 0 :(得分:0)
经过调查我发现问题这是由于客户端使用错误的wsdl来调用webservice。客户端使用旧的wsdl和托管的webservice有一个不同的wsdl。
要跟踪问题,我在服务器上启用了http登录,以检查客户端发送的请求。在将SOAP-UI请求与客户端请求进行比较后,我发现请求中有一个名称空间不同。在确定问题后,我要求客户端使用新的wsdl生成存根类并调用webservice并且它有效。
混淆是由于以下异常。所有解决方案都要求检查冲突的jar。
java.lang.ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl cannot be cast to com.sun.xml.bind.api.JAXBRIContext.