Please send these mails to servicemix-users mailing list rather than 
servicemix-dev..
 
 
Try adding the soapAction attribute to the following endpoint (for the external 
WS) as in this sample. You will get it in your WSDL (CTSWebService.wsdl). I am 
just guessing here as this is a kind of problem reported by someone else 
earlier. He did not let me know if it resolved his issue. If this does not 
resolve your issue, send the log with level set to DEBUG.
 
 
 
 <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 
<https://oma.wipro.com/exchweb/bin/redir.asp?URL=http://www.w3.org/2004/08/wsdl/in-out>
 "
                 soap="true"
                     wsdlResource="classpath:CTSWebService.wsdl" />    
 
This tutorial may also help 
http://incubator.apache.org/servicemix/orchestration-with-jsr181.html
Regards, 
Rabi Mishra 
http://rabisblog.blogspot.com/

________________________________

From: YEMITOMI [mailto:[EMAIL PROTECTED]
Sent: Thu 7/5/2007 10:10 PM
To: [EMAIL PROTECTED]
Subject: Failed to route message from local webservice to the external remote 
webservice




 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 <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.






The information contained in this electronic message and any attachments to 
this message are intended for the exclusive use of the addressee(s) and may 
contain proprietary, confidential or privileged information. If you are not the 
intended recipient, you should not disseminate, distribute or copy this e-mail. 
Please notify the sender immediately and destroy all copies of this message and 
any attachments. 

WARNING: Computer viruses can be transmitted via email. The recipient should 
check this email and any attachments for the presence of viruses. The company 
accepts no liability for any damage caused by any virus transmitted by this 
email.
 
www.wipro.com

Reply via email to