【问题标题】:LinkageError when calling webservice method调用 webservice 方法时出现 LinkageError
【发布时间】:2012-06-14 15:58:02
【问题描述】:

我有一个调用 bean 的 apache servicemix (camel 2.9) 路由,该路由又发出 SOAP 请求。 SOAP 代码是通过 wsdl2java 生成的并且工作正常(cxf 2.4.0)。我遇到的问题是当抛出 SOAP 错误时,我得到以下问题:

Caused by: java.lang.LinkageError: loader constraint violation: loader (instance of <bootloader>) previously initiated loading for a different type with name "javax/xml/soap/SOAPFault"
    at javax.xml.ws.soap.SOAPFaultException.<init>(SOAPFaultException.java:28)
    at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:156)[175:org.apache.cxf.bundle:2.5.0.fuse-7-061]
    at $Proxy120.catalogProductAttributeMediaRemove(Unknown Source)
    at com.boohoo.magento.MagentoProducts.deleteImageFromProduct(MagentoProducts.java:403)[769:magento-soap-api:1.0.0.SNAPSHOT]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_29]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_29]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_29]
    at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_29]
    at org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:340)
    at org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:237)
    at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:166)

通过一些谷歌搜索(我的背景是 C#),错误似乎表明该类已被多次加载,但我看不出这是怎么可能的,因为 SOAPFaultException 不是我的类之一。

有什么想法吗?

干杯。

【问题讨论】:

  • 寻找一个名为saaj-api.xml的罐子。它包含标准 JRE(rt.jar)中也存在的类。
  • 对不起,我不明白你的意思。我应该去哪里看?
  • 它是saaj-api.jar,而不是.xml。看起来您的应用程序已经从rt.jar 和其他地方加载了javax.xml.soap.SOAPFault。您使用哪些外部库?
  • 我想我找到了问题所在。我的 Web 服务包(cxf 1.4)显示它在 Eclipse 的“maven 依赖项”下使用另一个 Web 服务包(它是 rpc,使用轴 1.4)。不知道为什么会这样,因为 2 个捆绑包从不互相交谈,而且有点困惑,因为它不会让我将其删除...
  • 我已经更新了 maven 依赖,我的 cxf 包不再引用 rpc 包。我已经完成了清理/安装并重新启动了 apache servicemix,但仍然出现链接错误...

标签: apache-camel cxf linkageerror


【解决方案1】:

我发现这是 servicemix 配置的问题。见:http://fusesource.com/forums/thread.jspa?threadID=4016

【讨论】:

    猜你喜欢
    • 2012-02-20
    • 1970-01-01
    • 2021-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多