cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Freeman Fang <freeman.f...@gmail.com>
Subject Re: Problem using CXF
Date Thu, 26 May 2011 11:02:56 GMT
Hi,

Seems you're using cxf in OSGi container, right?
If so, could you elaborate what's OSGi container you're using and how  
you use cxf in it?
The LinkageError should come from you load jaxb api from different  
classloader, or there's two copys of jaxb api in your OSGi container.
Generally when run cxf with OSGi container we should  comment out  
javax.xml.bind* package from jdk and use jaxb-api bundle.
I suggest you use Apache Servicemix4 as the OSGi container, which  
support run cxf out of the box and have a set of examples, so that you  
needn't take care of the underlying details.

Freeman



On 2011-5-26, at 下午5:34, sonia ayadi wrote:

>
> Hi,
>
>
>
> When I
> generate the code Java from a WSDL I had an ERROR using CXF :
>
>
>
> java.lang.IllegalArgumentException:
> An operation with name [{http://BounceWS/}AssignEpop] already exists  
> in this
> service
>
>
>
> I solved
> this problem by commenting one of method with the same name in the  
> WSDL file :
>
>
>
> <wsdl:operation
> name="AssignEpop">
> <wsdl:input name="AssignEpopMethod1"
> message="tns:AssignEpopMethod1SoapIn" />
> <wsdl:output name="AssignEpopMethod1"
> message="tns:AssignEpopMethod1SoapOut" />
> </wsdl:operation>
> <!-- <wsdl:operation name="AssignEpop">
> <wsdl:input name="AssignEpopMethod2"
> message="tns:AssignEpopMethod2SoapIn" />
> <wsdl:output name="AssignEpopMethod2"
> message="tns:AssignEpopMethod2SoapOut" />
> </wsdl:operation>-->
> <wsdl:operation name="AssignEpop">
> <soap:operation soapAction="http://BounceWS/AssignEpopMethod1"
> style="document" />
>  <wsdl:input name="AssignEpopMethod1">
> <soap:body use="literal" />
> </wsdl:input>
> <wsdl:output name="AssignEpopMethod1">
> <soap:body use="literal" />
> </wsdl:output>
> </wsdl:operation>
> <!--<wsdl:operation name="AssignEpop">
> <soap:operation soapAction="http://BounceWS/AssignEpopMethod2"
> style="document" />
> <wsdl:input name="AssignEpopMethod2">
> <soap:body use="literal" />
> </wsdl:input>
> <wsdl:output name="AssignEpopMethod2">
> <soap:body use="literal" />
> </wsdl:output>
> </wsdl:operation>-->
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> Now, I have
> a problem when I run my program:
>
>
>
> Exception in
> thread "Thread-63" java.lang.LinkageError: loader constraint
> violation: when resolving method  
> "com.sun.xml.bind.v2.runtime.MarshallerImpl.setEventHandler(Ljavax/ 
> xml/bind/ValidationEventHandler;)V"
> the class loader (instance of org/apache/felix/framework/ModuleImpl 
> $ModuleClassLoader)
> of the current class, com/sun/xml/bind/v2/runtime/MarshallerImpl,  
> and the class
> loader (instance of
> <bootloader>) for resolved class,
> com/sun/xml/bind/v2/runtime/MarshallerImpl, have different Class  
> objects for
> the type javax/xml/bind/ValidationEventHandler
> used in the signature
> at
> com 
> .sun.xml.bind.v2.runtime.MarshallerImpl.<init>(MarshallerImpl.java: 
> 154)
> at
> com 
> .sun 
> .xml 
> .bind 
> .v2.runtime.JAXBContextImpl.createMarshaller(JAXBContextImpl.java:734)
> at  
> com 
> .sun 
> .xml 
> .bind 
> .v2.runtime.JAXBContextImpl.createMarshaller(JAXBContextImpl.java:138)
> at
> org 
> .apache 
> .cxf.jaxb.io.DataWriterImpl.createMarshaller(DataWriterImpl.java:102)
> at org.apache.cxf.jaxb.io.DataWriterImpl.write(DataWriterImpl.java: 
> 169)
> at
> org 
> .apache 
> .cxf 
> .interceptor 
> .AbstractOutDatabindingInterceptor 
> .writeParts(AbstractOutDatabindingInterceptor.java:105)
> at
> org 
> .apache 
> .cxf 
> .interceptor 
> .BareOutInterceptor.handleMessage(BareOutInterceptor.java:68)
> at  
> org 
> .apache 
> .cxf 
> .phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java: 
> 236)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:478)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:308)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:260)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at  
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java: 
> 124)
> at $Proxy43.dbConnectionOK(Unknown Source)
> at
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .businessappli 
> .drivers.impl.bounce.DriverBounce.startDriver(DriverBounce.java:204)
> at
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .businessappli 
> .drivers.impl.bounce.DriverBounce.getDriver(DriverBounce.java:143)
> at  
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .businessappli 
> .adapters 
> .impl.bouncews.AdapterBounceWS.adapterStarting(AdapterBounceWS.java: 
> 254)        at
> com 
> .orange 
> .m2m.smartbuilding.core.adapters.Adapter.startAdapter(Adapter.java: 
> 207)        at  
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .core.controllers.Controller.componentStarting(Controller.java:458)
> at
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .core.components.Component.startComponent(Component.java:542)
> at  
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .core 
> .starters 
> .impl.GenericStarterImpl.startComponent(GenericStarterImpl.java:325)
> at
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .core 
> .starters 
> .impl.GenericStarterImpl.buildController(GenericStarterImpl.java:116)
> at
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .businessappli 
> .starters.impl.bounce.StarterBounce.buildBounce(StarterBounce.java: 
> 129)
> at
> com 
> .orange 
> .m2m 
> .smartbuilding 
> .businessappli 
> .starters.impl.bounce.StarterBounce.timeOut(StarterBounce.java:145)
> at com.orange.m2m.smartbuilding.core.utils.Timer$1.run(Timer.java:127)
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> Can you
> help me to locate the problem?
>
>
>
> Thanks.
>
> Sonia. 		 	   		

---------------------------------------------
Freeman Fang

FuseSource
Email:ffang@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
Connect at CamelOne May 24-26
The Open Source Integration Conference









Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message