调用webservice方法时的LinkageError

时间:2012-06-14 15:58:02

标签: apache-camel cxf linkageerror

我有一个apache servicemix(camel 2.9)路由,它调用bean,然后发出一个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不是我的类之一。

有什么想法吗?

干杯。

1 个答案:

答案 0 :(得分:0)

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