You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by jcamus <jc...@parkeon.com> on 2008/08/28 10:11:23 UTC

CXF-BC : Could not find route for exchange: InOut

Hi!

I am working on a very simple project (based on cxf-wsdl-first) : A CXF-BC
with a WSDL linked to a CXF-SE.
When a run a client I have the following error message :

Could not find route for exchange: InOut[
org.apache.cxf.interceptor.Fault: Could not find route for exchange: InOut[
  id: ID:192.168.78.4-11c084d7fd2-4:0
  status: Active
  role: provider
  interface: {http://www.springframework.org/schema/beans}SoapInterface
  service: {http://www.springframework.org/schema/beans}SoapInterfaceService
  operation: {http://esb.test.com}logIn
  in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
xmlns:msg="http://esb.test.com
      <tns:deviceId xmlns:tns="http://esb.test.com">1245</tns:deviceId>
      <tns:groupId xmlns:tns="http://esb.test.com">4545</tns:groupId>
    </tns:logIn></jbi:part></jbi:message>
] for service:
{http://www.springframework.org/schema/beans}SoapInterfaceService and
interface: {http://www.springframework.org/schema/beans}SoapInterface
        at
org.apache.servicemix.cxfbc.CxfBcConsumer$JbiInvokerInterceptor.handleMessage(CxfBcConsumer.java:536)
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:221)
        at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:77)
        at
org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:278)
        at
org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:252)
        at
org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:70)
        at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:722)
        at
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
        at org.mortbay.jetty.handler.HandlerList.handle(HandlerList.java:49)
        at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
        at org.mortbay.jetty.Server.handle(Server.java:324)
        at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
        at
org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
        at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
        at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
Caused by: javax.jbi.messaging.MessagingException: Could not find route for
exchange: InOut[

When I use the generated java files (of the CXF-SE unit) on a simple eclipse
CXF project. It runs perfectly. So There is no problem with the annotations
on the java class.


The xbean of CXF-BC :

<beans xmlns="http://www.springframework.org/schema/beans" 
       xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0" 
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
       xsi:schemaLocation="http://servicemix.apache.org/cxfbc/1.0
http://servicemix.apache.org/schema/servicemix-cxfbc-3.2.2.xsd 
       http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

  <cxfbc:consumer wsdl="classpath:SoapInterface.wsdl" 
                  targetService="SoapInterfaceService"
                  targetInterface="SoapInterface">
  </cxfbc:consumer>
</beans>

The xbean of CXF-SE :

<beans xmlns:cxfse="http://servicemix.apache.org/cxfse/1.0">

    <cxfse:endpoint>
        <cxfse:pojo>
          <bean class="com.test.esb.SoapInterfaceImpl" />
        </cxfse:pojo>
    </cxfse:endpoint>

</beans>


The SoapInterfaceImpl class :

package com.test.esb;

import javax.jws.WebMethod;
import javax.jws.WebService;

@WebService(name = "SoapInterfaceService", targetNamespace =
"http://esb.test.com", endpointInterface = "com.test.esb.SoapInterface")
public class SoapInterfaceImpl implements SoapInterface {
	
	public String logIn(String deviceID, String groupID) {
		
		return "logIn devideID : " + deviceID + " - groupID : " + groupID;
	}
}

So, where is the problem?


-- 
View this message in context: http://www.nabble.com/CXF-BC-%3A-Could-not-find-route-for-exchange%3A-InOut-tp19196108p19196108.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: CXF-BC : Could not find route for exchange: InOut

Posted by Freeman Fang <fr...@gmail.com>.
jcamus wrote:
> Hi!
>
> I am working on a very simple project (based on cxf-wsdl-first) : A CXF-BC
> with a WSDL linked to a CXF-SE.
> When a run a client I have the following error message :
>
> Could not find route for exchange: InOut[
> org.apache.cxf.interceptor.Fault: Could not find route for exchange: InOut[
>   id: ID:192.168.78.4-11c084d7fd2-4:0
>   status: Active
>   role: provider
>   interface: {http://www.springframework.org/schema/beans}SoapInterface
>   service: {http://www.springframework.org/schema/beans}SoapInterfaceService
>   operation: {http://esb.test.com}logIn
>   in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
> xmlns:msg="http://esb.test.com
>       <tns:deviceId xmlns:tns="http://esb.test.com">1245</tns:deviceId>
>       <tns:groupId xmlns:tns="http://esb.test.com">4545</tns:groupId>
>     </tns:logIn></jbi:part></jbi:message>
> ] for service:
> {http://www.springframework.org/schema/beans}SoapInterfaceService and
> interface: {http://www.springframework.org/schema/beans}SoapInterface
>         at
> org.apache.servicemix.cxfbc.CxfBcConsumer$JbiInvokerInterceptor.handleMessage(CxfBcConsumer.java:536)
>         at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:221)
>         at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:77)
>         at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:278)
>         at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:252)
>         at
> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:70)
>         at
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:722)
>         at
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
>         at org.mortbay.jetty.handler.HandlerList.handle(HandlerList.java:49)
>         at
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
>         at org.mortbay.jetty.Server.handle(Server.java:324)
>         at
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
>         at
> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
>         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
>         at
> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
>         at
> org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
> Caused by: javax.jbi.messaging.MessagingException: Could not find route for
> exchange: InOut[
>
> When I use the generated java files (of the CXF-SE unit) on a simple eclipse
> CXF project. It runs perfectly. So There is no problem with the annotations
> on the java class.
>
>
> The xbean of CXF-BC :
>
> <beans xmlns="http://www.springframework.org/schema/beans" 
>        xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0" 
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
>        xsi:schemaLocation="http://servicemix.apache.org/cxfbc/1.0
> http://servicemix.apache.org/schema/servicemix-cxfbc-3.2.2.xsd 
>        http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
>
>   <cxfbc:consumer wsdl="classpath:SoapInterface.wsdl" 
>                   targetService="SoapInterfaceService"
>                   targetInterface="SoapInterface">
>   </cxfbc:consumer>
> </beans>
>   
the targetService and targetInterface here should be the QName, which 
means you should define namespace prefix and add this prefix to the 
localName,
add xmlns:yourprefix="http://esb.test.com" and change your targetService 
and targetInterface to

targetService="yourprefix:SoapInterfaceService"
targetInterface="yourprefix:SoapInterface"
> The xbean of CXF-SE :
>
> <beans xmlns:cxfse="http://servicemix.apache.org/cxfse/1.0">
>
>     <cxfse:endpoint>
>         <cxfse:pojo>
>           <bean class="com.test.esb.SoapInterfaceImpl" />
>         </cxfse:pojo>
>     </cxfse:endpoint>
>
> </beans>
>
>
> The SoapInterfaceImpl class :
>
> package com.test.esb;
>
> import javax.jws.WebMethod;
> import javax.jws.WebService;
>
> @WebService(name = "SoapInterfaceService", targetNamespace =
> "http://esb.test.com", endpointInterface = "com.test.esb.SoapInterface")
> public class SoapInterfaceImpl implements SoapInterface {
> 	
> 	public String logIn(String deviceID, String groupID) {
> 		
> 		return "logIn devideID : " + deviceID + " - groupID : " + groupID;
> 	}
> }
>
> So, where is the problem?
>
>
>   


Re: CXF-BC : Could not find route for exchange: InOut

Posted by jcamus <jc...@parkeon.com>.
Many thanks! It works now!


-- 
View this message in context: http://www.nabble.com/CXF-BC-%3A-Could-not-find-route-for-exchange%3A-InOut-tp19196108p19196904.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: CXF-BC : Could not find route for exchange: InOut

Posted by Edell Nolan <ed...@gmail.com>.
Hi,

You should specify the namespace for the service

try this

<beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:test="http://esb.test.com" <http://esb.test.com/>
>
>       xsi:schemaLocation="http://servicemix.apache.org/cxfbc/1.0
http://servicemix.apache.org/schema/servicemix-cxfbc-3.2.2.xsd
      http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

 <cxfbc:consumer wsdl="classpath:SoapInterface.
>
> wsdl"
>                  targetService="test:SoapInterfaceService"
>                  targetInterface="SoapInterface">
>  </cxfbc:consumer>
> </beans>
>

Edell.

On Thu, Aug 28, 2008 at 9:11 AM, jcamus <jc...@parkeon.com> wrote:

>
> Hi!
>
> I am working on a very simple project (based on cxf-wsdl-first) : A CXF-BC
> with a WSDL linked to a CXF-SE.
> When a run a client I have the following error message :
>
> Could not find route for exchange: InOut[
> org.apache.cxf.interceptor.Fault: Could not find route for exchange: InOut[
>  id: ID:192.168.78.4-11c084d7fd2-4:0
>  status: Active
>  role: provider
>  interface: {http://www.springframework.org/schema/beans}SoapInterface<http://www.springframework.org/schema/beans%7DSoapInterface>
>  service: {
> http://www.springframework.org/schema/beans}SoapInterfaceService<http://www.springframework.org/schema/beans%7DSoapInterfaceService>
>  operation: {http://esb.test.com}logIn
>  in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
> xmlns:msg="http://esb.test.com
>      <tns:deviceId xmlns:tns="http://esb.test.com">1245</tns:deviceId>
>      <tns:groupId xmlns:tns="http://esb.test.com">4545</tns:groupId>
>    </tns:logIn></jbi:part></jbi:message>
> ] for service:
> {http://www.springframework.org/schema/beans}SoapInterfaceService<http://www.springframework.org/schema/beans%7DSoapInterfaceService>and
> interface: {http://www.springframework.org/schema/beans}SoapInterface<http://www.springframework.org/schema/beans%7DSoapInterface>
>        at
>
> org.apache.servicemix.cxfbc.CxfBcConsumer$JbiInvokerInterceptor.handleMessage(CxfBcConsumer.java:536)
>        at
>
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:221)
>        at
>
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:77)
>        at
>
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:278)
>        at
>
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:252)
>        at
>
> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:70)
>        at
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:722)
>        at
>
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
>        at org.mortbay.jetty.handler.HandlerList.handle(HandlerList.java:49)
>        at
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
>        at org.mortbay.jetty.Server.handle(Server.java:324)
>        at
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
>        at
>
> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
>        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
>        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
>        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
>        at
>
> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
>        at
>
> org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
> Caused by: javax.jbi.messaging.MessagingException: Could not find route for
> exchange: InOut[
>
> When I use the generated java files (of the CXF-SE unit) on a simple
> eclipse
> CXF project. It runs perfectly. So There is no problem with the annotations
> on the java class.
>
>
> The xbean of CXF-BC :
>
> <beans xmlns="http://www.springframework.org/schema/beans"
>       xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
>       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>       xsi:schemaLocation="http://servicemix.apache.org/cxfbc/1.0
> http://servicemix.apache.org/schema/servicemix-cxfbc-3.2.2.xsd
>       http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
>
>  <cxfbc:consumer wsdl="classpath:SoapInterface.wsdl"
>                  targetService="SoapInterfaceService"
>                  targetInterface="SoapInterface">
>  </cxfbc:consumer>
> </beans>
>
> The xbean of CXF-SE :
>
> <beans xmlns:cxfse="http://servicemix.apache.org/cxfse/1.0">
>
>    <cxfse:endpoint>
>        <cxfse:pojo>
>          <bean class="com.test.esb.SoapInterfaceImpl" />
>        </cxfse:pojo>
>    </cxfse:endpoint>
>
> </beans>
>
>
> The SoapInterfaceImpl class :
>
> package com.test.esb;
>
> import javax.jws.WebMethod;
> import javax.jws.WebService;
>
> @WebService(name = "SoapInterfaceService", targetNamespace =
> "http://esb.test.com", endpointInterface = "com.test.esb.SoapInterface")
> public class SoapInterfaceImpl implements SoapInterface {
>
>        public String logIn(String deviceID, String groupID) {
>
>                return "logIn devideID : " + deviceID + " - groupID : " +
> groupID;
>        }
> }
>
> So, where is the problem?
>
>
> --
> View this message in context:
> http://www.nabble.com/CXF-BC-%3A-Could-not-find-route-for-exchange%3A-InOut-tp19196108p19196108.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>