Thank you for the quick response. I don't want to get the qname and other values from the MessageExchange that is passed to my method. I thought the messageExhange factory copies all these values when it creates the MessageExhange.
How can I get the target Qname from the input messageExhange? gnodet wrote: > > You need to specify where you want to send your exchange. > This is usually done using; > exchangeRobustInOnly.setService( qname ); > but depending how you want to target the endpoint, you can also use > setInterface() or setEndpoint(). > > Btw, you don't have to set the status of the exchange to active. > > On Tue, Sep 16, 2008 at 8:12 PM, NeenaMathew > <[EMAIL PROTECTED]> wrote: >> >> Hi >> >> I have webservice reciveing some soap request doing some validation and >> enrichment, then need to create a text file from the data and Secure ftp >> the >> file to another system and send the response back to the client. >> >> Here is my Route >> >> cxfBC - cxfSE- ServiceMix-Bean(does translation to text file and attach >> the >> file in message)- FTP-ServiceMix-Bean(Generate the Response back to >> Client >> with proper message codes) >> >> In my translation component I am trying to create a RobustInOnly Exchange >> for my FTP component. >> I am not sure this is the pattern I need to follow. but just trying >> out... >> >> I use something like this >> >> MessageExchangeFactory factory = channel.createExchangeFactory(); >> RobustInOnly exchangeRobustInOnly = factory.createRobustInOnlyExchange(); >> exchangeRobustInOnly.setInMessage(outMessage); >> exchangeRobustInOnly.setStatus(ExchangeStatus.ACTIVE); >> channel.send(exchangeRobustInOnly); >> >> When I deploy I am getting the following error. >> >> I ran servicemix in debug mode and found that when the RobustInOnly >> exchange >> is created the code is trying to copy the endpoint and servicename from >> messageFactoryimpl class. but the values are null in factory object >> >> INFO: Interceptor has thrown exception, unwinding now >> org.apache.cxf.interceptor.Fault: Could not find route for exchange: >> RobustInOnly[ >> id: ID:172.24.44.33-11c6c115be6-4:6 >> status: Active >> role: provider >> in: <?xml version="1.0" encoding="UTF-8"?><jbi:message >> xmlns:jbi="http://java.sun.com/xml/ns/jbi/w... >> ] for service: null and interface: null >> at >> org.apache.servicemix.cxfbc.CxfBcConsumer$JbiPostInvokerInterceptor.handleMessage(CxfBcCo >> nsumer.java:560) >> at >> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220) >> at >> org.apache.cxf.phase.PhaseInterceptorChain.resume(PhaseInterceptorChain.java:198) >> at >> org.apache.servicemix.cxfbc.CxfBcConsumer.process(CxfBcConsumer.java:203) >> at >> org.apache.servicemix.cxfbc.CxfBcConsumer$JbiInvokerInterceptor.handleMessage(CxfBcConsum >> er.java:536) >> at >> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220) >> at >> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:7 >> 7) >> at >> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestinat >> ion.java:278) >> at >> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.j >> ava:252) >> at >> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:70) >> at >> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729) >> at >> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:2 >> 06) >> at >> org.mortbay.jetty.handler.HandlerList.handle(HandlerList.java:49) >> at >> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) >> 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:843) >> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647) >> 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.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488) >> Caused by: javax.jbi.messaging.MessagingException: Could not find route >> for >> exchange: RobustInOnly[ >> id: ID:172.24.44.33-11c6c115be6-4:6 >> status: Active >> role: provider >> in: <?xml version="1.0" encoding="UTF-8"?><jbi:message >> xmlns:jbi="http://java.sun.com/xml/ns/jbi/w... >> ] for service: null and interface: null >> at >> org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:297) >> at >> org.apache.servicemix.jbi.security.SecuredBroker.sendExchangePacket(SecuredBroker.java:88 >> ) >> at >> org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:830) >> at >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:3 >> 95) >> at >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:431 >> ) >> at >> org.apache.servicemix.common.EndpointDeliveryChannel.send(EndpointDeliveryChannel.java:79 >> ) >> at >> org.apache.servicemix.bean.BeanEndpoint$PojoChannel.send(BeanEndpoint.java:578) >> at >> com.freddiemac.services.treasury.funds.SaxonBean.onMessageExchange(SaxonBean.java:88) >> at >> org.apache.servicemix.bean.BeanEndpoint.onProviderExchange(BeanEndpoint.java:240) >> at >> org.apache.servicemix.bean.BeanEndpoint.process(BeanEndpoint.java:216) >> at >> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:540) >> at >> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:4 >> 92) >> at >> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46) >> at >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImp >> l.java:610) >> at >> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172) >> at >> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167) >> at >> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) >> at java.lang.Thread.run(Thread.java:595) >> >> -- >> View this message in context: >> http://www.nabble.com/creating-RobustInOnly-messageExchange-tp19517513p19517513.html >> Sent from the ServiceMix - User mailing list archive at Nabble.com. >> >> > > > > -- > Cheers, > Guillaume Nodet > ------------------------ > Blog: http://gnodet.blogspot.com/ > > -- View this message in context: http://www.nabble.com/creating-RobustInOnly-messageExchange-tp19517513p19537032.html Sent from the ServiceMix - User mailing list archive at Nabble.com.
