转weblogic 发布CXF问题

Posted tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了转weblogic 发布CXF问题相关的知识,希望对你有一定的参考价值。

之前在项目中遇见一个问题就是发布CXF到weblogic中遇见一个问题 

java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/UserDataHandler class 
at org.apache.cxf.staxutils.StaxUtils.addLocation(StaxUtils.java:984) 
at org.apache.cxf.staxutils.StaxUtils.startElement(StaxUtils.java:842) 
at org.apache.cxf.staxutils.StaxUtils.readDocElements(StaxUtils.java:911) 
at org.apache.cxf.staxutils.StaxUtils.read(StaxUtils.java:798) 
at org.apache.cxf.wsdl11.WSDLManagerImpl.loadDefinition(WSDLManagerImpl.java:219) 
Truncated. see log file for complete stacktrace 


这个异常在网上很少找到,连google也很难搜索到,最后解决得知是依赖包冲突了 

具体解决方法: 
类A依赖于类B,但是类A在编译时、加载时使用了两个不同的类B的class,就会出现这个异常。也就是说,这个异常通常指示着jar包冲突。比如,cxf发布到weblogic下时,可能出现: 
java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/UserDataHandler class 
这个org/w3c/dom/UserDataHandler class至少在三个jar包中:jdk的rt.jar,jaxen.jar,和xmlbeans.jar里。删除后两个jar,我的cxf就能正常运行了。

 

转自http://buyaozaibeidaole.iteye.com/blog/1672425

 

补充:如果程序启动时报与上面类似的错误,但类是javax/xml/namespace/QName,只需要删除jaxrpc.jar中的QName类就可以了

 

以上是关于转weblogic 发布CXF问题的主要内容,如果未能解决你的问题,请参考以下文章

weblogic 整合cxf 报错:cannot create a secure XmlInputFactory

在weblogic 12c中部署的cxf soap客户端webservices

WebLogic在SpringBoot CXF应用程序中使用@WebParam部署异常

在weblogic中部署CXF-webservice调用提示错误:Cannot create a secure XMLInputFactory

Weblogic10.3.6部署解决CXF webService 调用报错: “Cannot create a secure XMLInputFactory”

(转) 修改weblogic部署的应用名称

(c)2006-2024 SYSTEM All Rights Reserved IT常识