I deployed the webservices succefully on servicemix 3.1.1, but when I tried to use client to send a soap message, I got this error. The code used was included in this message. Any help will be appreciated
ERROR MESSAGE: org.codehaus.xfire.XFireRuntimeException: Could not invoke service.. Nested exception is org.codehaus.xfire.fault.XFireFault: Error sending jbi exchange org.codehaus.xfire.fault.XFireFault: Error sending jbi exchange at org.codehaus.xfire.fault.XFireFault.createFault(XFireFault.java:89) at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:30) at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131) at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:75) at org.codehaus.xfire.client.Client.invoke(Client.java:335) at org.apache.servicemix.jsr181.xfire.JbiProxy$JAXWSJBIClient.invoke(JbiProxy.java:228) at org.codehaus.xfire.client.XFireProxy.handleRequest(XFireProxy.java:77) at org.codehaus.xfire.client.XFireProxy.invoke(XFireProxy.java:57) at org.apache.servicemix.jsr181.xfire.JbiProxyFactoryBean$1.invoke(JbiProxyFactoryBean.java:76) at $Proxy0.execute(Unknown Source) at com.aciworldwide.scm.test.token.CTWebServiceServiceImpl.execute(CTWebServiceServiceImpl.java:15) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.codehaus.xfire.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:54) at org.codehaus.xfire.service.binding.ServiceInvocationHandler.sendMessage(ServiceInvocationHandler.java:322) at org.codehaus.xfire.service.binding.ServiceInvocationHandler$1.run(ServiceInvocationHandler.java:86) at org.codehaus.xfire.service.binding.ServiceInvocationHandler.execute(ServiceInvocationHandler.java:134) at org.codehaus.xfire.service.binding.ServiceInvocationHandler.invoke(ServiceInvocationHandler.java:109) at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131) at org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:64) at org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:38) at org.apache.servicemix.jsr181.Jsr181ExchangeProcessor.process(Jsr181ExchangeProcessor.java:113) at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489) at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441) at org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46) at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:595) at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174) at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176) at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690) at java.lang.Thread.run(Thread.java:595) Caused by: org.codehaus.xfire.XFireException: Error sending jbi exchange at org.apache.servicemix.jsr181.xfire.JbiChannel.send(JbiChannel.java:155) at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:26) ... 32 more Caused by: org.codehaus.xfire.XFireRuntimeException: Couldn't get property {http://dom.w3c.org}baseURI from bean [EMAIL PROTECTED] Nested exception is java.lang.reflect.InvocationTargetException: null at org.codehaus.xfire.aegis.type.basic.BeanType.readProperty(BeanType.java:471) at org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:402) at org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:417) at org.codehaus.xfire.aegis.AegisBindingProvider.writeParameter(AegisBindingProvider.java:200) at org.codehaus.xfire.service.binding.AbstractBinding.writeParameter(AbstractBinding.java:273) at org.codehaus.xfire.service.binding.WrappedBinding.writeMessage(WrappedBinding.java:89) at org.apache.servicemix.jsr181.xfire.JbiChannel.getContent(JbiChannel.java:173) at org.apache.servicemix.jsr181.xfire.JbiChannel.send(JbiChannel.java:122) ... 33 more Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.codehaus.xfire.aegis.type.basic.BeanType.readProperty(BeanType.java:467) ... 40 more Caused by: java.lang.RuntimeException: DOM Level 3 Not implemented at org.apache.xmlbeans.impl.store.DomImpl._node_getBaseURI(DomImpl.java:2534) at org.apache.xmlbeans.impl.store.Xobj$NodeXobj.getBaseURI(Xobj.java:2593) Client code: AnnotationServiceFactory asf = new AnnotationServiceFactory(); AegisBindingProvider provider = new AegisBindingProvider(new XmlBeansTypeRegistry()); asf.setBindingProvider(provider); Service service = asf.create(CTWebService.class); service.setProperty(XmlBeansType.XMLBEANS_NAMESPACE_HACK,"true"); XFire xfire = XFireFactory.newInstance().getXFire(); XFireProxyFactory factory = new XFireProxyFactory(xfire); String serviceUrl ="http://localhost:8080/CTS/services/CTWebService/"; CTWebService servicem = (CTWebService)factory.create(service, serviceUrl); XmlObject xmlObject = servicem.execute(XmlObject.Factory.parse(new File("D:/testing.xml"))); System.out.println(xmlObject.toString()); ////////////////////////////////// My SERVICEMIX-HTTP( Xbean.xml) <?xml version="1.0" encoding="UTF-8"?> <beans xmlns:http="http://servicemix.apache.org/http/1.0" xmlns:cts="http://scm.com/test/token" xmlns:intf="http://3a:8071/cts/CTSWebService"> <classpath> <location>.</location> </classpath> <http:endpoint service="cts:CTWebServiceService" endpoint="CTService" role="consumer" locationURI="http://0.0.0.0:8080/CTS/services/CTWebService/" defaultMep="http://www.w3.org/2004/08/wsdl/in-out" soap="true"/> <http:endpoint service="intf:CTSWebServiceService" endpoint="CTSWebService" role="provider" locationURI="http://3a:8071/cts/CTSWebService" defaultMep="http://www.w3.org/2004/08/wsdl/in-out" soap="true" wsdlResource="classpath:CTSWebService.wsdl" /> </beans> //////////////////////////// SERVICEMIX-JSR181(Xbean.xml): <?xml version="1.0" encoding="UTF-8"?> <beans xmlns:jsr181="http://servicemix.apache.org/jsr181/1.0" xmlns:intf="http://3a:8071/cts/CTSWebService"> <jsr181:endpoint pojo="#cts" wsdlResource="classpath:CWebservice.wsdl" annotations="jsr181" typeMapping="xmlbeans" style="rpc" /> <bean id="cts" class="com.scm.test.token.CTWebServiceServiceImpl"> <property name="ctSWebService"> <jsr181:proxy context="#context" type="com.aciworldwide.scm.test.CTSWebService" service="intf:CTSWebServiceService" /> </property> </bean> </beans> ////////////////////////////////// I used xfire to generated this code from the wsdl of external webservice: WebService(serviceName = "CTSWebServiceService", targetNamespace = "http://3a:8071/cts/CTSWebService", endpointInterface = "com.aciworldwide.scm.test.CTSWebService") public class CTSWebServiceServiceImpl implements CTSWebService { public XmlObject execute(XmlObject xml) { throw new UnsupportedOperationException(); } } @WebService(name = "CTSWebService", targetNamespace = "http://3a:8071/cts/CTSWebService") @SOAPBinding(style = SOAPBinding.Style.RPC, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.BARE) public interface CTSWebService { @WebMethod(operationName = "execute", action = "") @WebResult(name = "executeReturn", targetNamespace = "http://3a:8071/cts/CTSWebService") public XmlObject execute( @WebParam(name = "xml", targetNamespace = "http://3a:8071/cts/CTSWebService") XmlObject xml); } /////////////////////////////////// I used xfire to generated this code from the wsdl of local webservice: @WebService(serviceName = "CTWebServiceService", targetNamespace = "http://scm.com/test/token", endpointInterface = "com.scm.test.token.CTWebService") public class CTWebServiceServiceImpl implements CTWebService { private CTSWebService ctSWebService; public XmlObject execute(XmlObject xml) { XmlObject xmlObject= ctSWebService.execute(xml); return xmlObject; } public void setCtSWebService(CTSWebService ctSWebService){ this.ctSWebService = ctSWebService; } } Any helps will be appreciated please. -- View this message in context: http://www.nabble.com/Failed-to-route-message-from-local-webservice-to-the-external-remote-webservice-tf4030879s12049.html#a11450176 Sent from the ServiceMix - Dev mailing list archive at Nabble.com.