Hi You can use the wireTap for fire and forget style DSL.
1) However I currently does not support specifying multiple destinations in one line. 2) However I was wondering if we could improve the logic in multicast to inspect the MEP and if not Out capable it should not wait/expect a response. Might be not east to do. 2009/3/27 cmoulliard <[email protected]>: > > Hi Willem, > > Many thanks. > > By the way, It should be interesting to have a real parallel DSL word in the > camel syntax for simple case like this. > > The route could be written with the assumption that no OUT message is waited > by the calling process > > e.g. > > <from uri=""> > ... > <!-- at this point we don't wait any OUT message from endpoints called, our > strategy is pure > FIRE/FORGET --> > <parallel> > <to uri="direct:feedbackWS"/> > <to uri="direct:saveWS"/> > </parrallel> > > An extension of this could be that parallel does not receive OUT message but > properties or headers like e.g. parallelName="feedbackWS", > status="processed" and we could provide a timer as a property. > > <parallel timer="180" feedbackRequested="true"> > ... > </parallel> > > If one of the parallel process does not finish until the period defined by > the timer, then the parallel process generates errors. > > regards, > > Charles > > > > > willem.jiang wrote: >> >> Hi Charles, >> >> Camel multicast supports to send the exchange parallely. >> You just need to set the customer aggregation strategy to return a right >> exchange for aggregation like this, since we don't when the bean's >> exchange is returned. >> >> public class MyCustomerAggregationStrategy implements AggregationStrategy >> { >> // only return the exchage which has the out message >> public Exchange aggregate(Exchange oldExchange, Exchange newExchange) >> { >> if (oldExchange.getOutMessage(false)!= null) { >> return oldExchange; >> } else { >> return newExchange; >> } >> } >> } >> >> Willem >> >> >> >> cmoulliard wrote: >>> Many thanks Willem. In fact, I tried to use the multicast as a workaround >>> because I was blocked to call directly the bean:feedback after the step >>> converting the content of WS into InputReportIncident. I have the same >>> problem as we have with the setHeader that you solved >>> >>> remark : In my case, it could be more interesting to send in parallel the >>> same message to two different endpoints (direct:feedbackWS and >>> direct:saveWS). >>> >>> Nevertheless, I will try to adapt my multicast routes as you propose (put >>> the "direct:feedbackWS" to the last endpoint) but for the moment I don't >>> how >>> to achieve this. >>> >>> Regards, >>> >>> Charles >>> >>> So I will try to >>> >>> willem.jiang wrote: >>>> Hi Charles, >>>> >>>> If you used the multicast for the InOut Message, Camel will try to >>>> aggregate the exchange for the out message processing and the default >>>> aggregation strategy is using the last exchange. >>>> >>>> You need to adjust the multicast endpoints in your Spring configuration >>>> file, and put the "direct:feedbackWS" to the last endpoint, or you can >>>> specify your own aggregation strategy in the multicast. >>>> >>>> You can find more examples about how to use multicast in the LoanBroker >>>> Example[1] of Camel. >>>> >>>> [1]http://cwiki.apache.org/CAMEL/loan-broker-example.html#LoanBrokerExample-Implementationwithwebservice >>>> >>>> Willem >>>> >>>> >>>> >>>> cmoulliard wrote: >>>>> To solve the error returned and as proposed by Claus, I have modified >>>>> my >>>>> route like this >>>>> >>>>> <camel:inOnly uri="queuingservice:queue:in" /> >>>>> >>>>> Nevertheless, the multicast does not work as we can in the log here : >>>>> >>>>> 17:38:34,250 | INFO | 25328...@qtp2-0 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-7 >>> >>>>> http://localhost:8080/camel-example/incident --> setHeader(webservice), >>>>> Pattern:InOut, >>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>> CamelCXFDataFormat=POJO}, Headers:{content-type=text/xml;charset=UTF-8, >>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>> Host=localhost:8080, Content-Length=640, >>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>> org.apache.cxf.headers.Header.list=[], >>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>> BodyType:org.apache.cxf.message.MessageContentsList, >>>>> Body:[org.apache.camel.example.reportincident.inputreportincid...@250f55] >>>>> 17:38:34,265 | INFO | 25328...@qtp2-0 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-7 >>> setHeader(webservice) --> >>>>> convertBodyTo(), Pattern:InOut, >>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>> CamelCXFDataFormat=POJO}, Headers:{content-type=text/xml;charset=UTF-8, >>>>> operationName=ReportIncident, content.type=text/xml;charset=UTF-8, >>>>> Host=localhost:8080, Content-Length=640, >>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>> origin=webservice, User-Agent=Jakarta Commons-HttpClient/3.1, >>>>> operationNameSpace=http://reportincident.example.camel.apache.org, >>>>> org.apache.cxf.headers.Header.list=[]}, >>>>> BodyType:org.apache.cxf.message.MessageContentsList, >>>>> Body:[org.apache.camel.example.reportincident.inputreportincid...@250f55] >>>>> 17:38:34,265 | INFO | 25328...@qtp2-0 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-7 >>> convertBodyTo() --> >>>>> multicast(), >>>>> Pattern:InOut, >>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>> CamelCXFDataFormat=POJO}, Headers:{content-type=text/xml;charset=UTF-8, >>>>> operationName=ReportIncident, content.type=text/xml;charset=UTF-8, >>>>> Host=localhost:8080, Content-Length=640, >>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>> origin=webservice, User-Agent=Jakarta Commons-HttpClient/3.1, >>>>> operationNameSpace=http://reportincident.example.camel.apache.org, >>>>> org.apache.cxf.headers.Header.list=[]}, >>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@250f55 >>>>> 17:38:34,265 | INFO | 25328...@qtp2-0 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-7 >>> multicast() --> >>>>> to(direct:feedbackWS), Pattern:InOut, >>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>> CamelCXFDataFormat=POJO}, Headers:{content-type=text/xml;charset=UTF-8, >>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>> Host=localhost:8080, Content-Length=640, origin=webservice, >>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>> org.apache.cxf.headers.Header.list=[], >>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@250f55 >>>>> 17:38:34,281 | INFO | 25328...@qtp2-0 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-7 >>> to(direct:feedbackWS) --> >>>>> transform(), Pattern:InOut, >>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>> CamelCXFDataFormat=POJO}, Headers:{content-type=text/xml;charset=UTF-8, >>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>> Host=localhost:8080, Content-Length=640, origin=webservice, >>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>> org.apache.cxf.headers.Header.list=[], >>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@250f55 >>>>> 17:38:34,281 | INFO | 25328...@qtp2-0 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-7 >>> transform() --> >>>>> to(direct:saveWS), Pattern:InOut, >>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>> CamelCXFDataFormat=POJO}, Headers:{content-type=text/xml;charset=UTF-8, >>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>> Host=localhost:8080, Content-Length=640, origin=webservice, >>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>> org.apache.cxf.headers.Header.list=[], >>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@250f55 >>>>> 17:38:34,296 | INFO | 25328...@qtp2-0 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-7 >>> to(direct:saveWS) --> >>>>> to(bean:webservice), Pattern:InOut, >>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>> CamelCXFDataFormat=POJO}, Headers:{content-type=text/xml;charset=UTF-8, >>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>> Host=localhost:8080, Content-Length=640, origin=webservice, >>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>> org.apache.cxf.headers.Header.list=[], >>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@250f55 >>>>> 17:38:34,312 | INFO | 25328...@qtp2-0 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-7 >>> to(bean:webservice) --> >>>>> inOnly(queuingservice:queue:in), Pattern:InOut, >>>>> Properties:{CamelBeanHolder=bean: webservice, >>>>> org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>> CamelCXFDataFormat=POJO}, BodyType:java.util.ArrayList, >>>>> Body:[{org.apache.camel.example.reportincident.model.incident=org.apache.camel.example.reportincident.model.incid...@e22502[ >>>>> incidentId=0 >>>>> incidentRef=20 >>>>> incidentDate=<null> >>>>> givenName=Charles >>>>> familyName=Moulliard >>>>> summary=This is an OSGI report incident >>>>> details=nothing to say >>>>> [email protected] >>>>> phone=+352 25 10 70 470 >>>>> creationUser=<null> >>>>> creationDate=<null> >>>>> ]}] >>>>> 17:38:34,343 | INFO | ActiveMQ Task | FailoverTransport >>>>> | >>>>> sport.failover.FailoverTransport 714 | Successfully connected to >>>>> tcp://localhost:61616 >>>>> 17:38:34,437 | INFO | enerContainer-35 | TraceInterceptor >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> ID-dell-charles-1751-1238084114250-2-8 >>> queuingservice:queue:in --> >>>>> to(bean:incidentSaver?method=process), Pattern:InOnly, >>>>> Headers:{JMSXGroupID=null, JMSCorrelationID=null, JMSType=null, >>>>> JMSExpiration=0, >>>>> JMSMessageID=ID:dell-charles-1712-1238084102453-2:3:1:1:1, >>>>> JMSRedelivered=false, JMSDeliveryMode=2, JMSPriority=4, >>>>> JMSReplyTo=null, >>>>> JMSTimestamp=1238085514359, JMSDestination=queue://in}, >>>>> BodyType:java.util.ArrayList, >>>>> Body:[{org.apache.camel.example.reportincident.model.incident=org.apache.camel.example.reportincident.model.incid...@f0bca1[ >>>>> incidentId=0 >>>>> incidentRef=20 >>>>> incidentDate=<null> >>>>> givenName=Charles >>>>> familyName=Moulliard >>>>> summary=This is an OSGI report incident >>>>> details=nothing to say >>>>> [email protected] >>>>> phone=+352 25 10 70 470 >>>>> creationUser=<null> >>>>> creationDate=<null> >>>>> ]}] >>>>> 17:38:34,421 | INFO | 25328...@qtp2-0 | PhaseInterceptorChain >>>>> | >>>>> ransport.ChainInitiationObserver 89 | Interceptor has thrown >>>>> exception, >>>>> unwinding now >>>>> org.apache.cxf.interceptor.Fault: Marshalling Error: class >>>>> java.util.HashMap >>>>> nor any of its super class is known to this context. >>>>> at >>>>> org.apache.cxf.jaxb.JAXBEncoderDecoder.marshall(JAXBEncoderDecoder.java:159) >>>>> at >>>>> org.apache.cxf.jaxb.io.DataWriterImpl.write(DataWriterImpl.java:169) >>>>> at >>>>> org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(AbstractOutDatabindingInterceptor.java:104) >>>>> at >>>>> org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutInterceptor.java:68) >>>>> at >>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236) >>>>> at >>>>> org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:74) >>>>> at >>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236) >>>>> at >>>>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89) >>>>> at >>>>> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:302) >>>>> at >>>>> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:265) >>>>> at >>>>> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:70) >>>>> at >>>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) >>>>> at >>>>> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) >>>>> 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:534) >>>>> at >>>>> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:879) >>>>> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:741) >>>>> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:213) >>>>> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:403) >>>>> at >>>>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) >>>>> at >>>>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522) >>>>> Caused by: javax.xml.bind.MarshalException >>>>> - with linked exception: >>>>> [javax.xml.bind.JAXBException: class java.util.HashMap nor any of its >>>>> super >>>>> class is known to this context.] >>>>> at >>>>> com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:331) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:257) >>>>> at >>>>> javax.xml.bind.helpers.AbstractMarshallerImpl.marshal(AbstractMarshallerImpl.java:100) >>>>> at >>>>> org.apache.cxf.jaxb.JAXBEncoderDecoder.writeObject(JAXBEncoderDecoder.java:441) >>>>> at >>>>> org.apache.cxf.jaxb.JAXBEncoderDecoder.marshall(JAXBEncoderDecoder.java:138) >>>>> ... 21 more >>>>> Caused by: javax.xml.bind.JAXBException: class java.util.HashMap nor >>>>> any >>>>> of >>>>> its super class is known to this context. >>>>> at >>>>> com.sun.xml.bind.v2.runtime.XMLSerializer.reportError(XMLSerializer.java:242) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.XMLSerializer.reportError(XMLSerializer.java:257) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:649) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty.serializeBody(SingleElementNodeProperty.java:147) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl$1.serializeBody(ElementBeanInfoImpl.java:156) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl$1.serializeBody(ElementBeanInfoImpl.java:185) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl.serializeBody(ElementBeanInfoImpl.java:305) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl.serializeRoot(ElementBeanInfoImpl.java:312) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl.serializeRoot(ElementBeanInfoImpl.java:71) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.XMLSerializer.childAsRoot(XMLSerializer.java:490) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:328) >>>>> ... 25 more >>>>> Caused by: javax.xml.bind.JAXBException: class java.util.HashMap nor >>>>> any >>>>> of >>>>> its super class is known to this context. >>>>> at >>>>> com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:556) >>>>> at >>>>> com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:644) >>>>> ... 33 more >>>>> >>>>> cmoulliard wrote: >>>>>> Hi, >>>>>> >>>>>> I have defined the following routes in camel : >>>>>> >>>>>> <!-- Receive WS message, multicast the message and provive >>>>>> feedback >>>>>> --> >>>>>> <camel:route> >>>>>> <camel:from uri="cxf:bean:reportIncident" /> >>>>>> <!-- issue resolved 26/03/2009 --> >>>>>> <camel:setHeader headerName="origin"> >>>>>> <camel:constant>webservice</camel:constant> >>>>>> </camel:setHeader> >>>>>> <camel:convertBodyTo >>>>>> type="org.apache.camel.example.reportincident.InputReportIncident" /> >>>>>> <camel:multicast> >>>>>> <camel:to uri="direct:feedbackWS"/> >>>>>> <camel:to uri="direct:saveWS"/> >>>>>> </camel:multicast> >>>>>> </camel:route> >>>>>> >>>>>> <!-- Send feedback to WebService --> >>>>>> <camel:route> >>>>>> <camel:from uri="direct:feedbackWS" /> >>>>>> <camel:transform> >>>>>> <camel:method bean="feedback" method="setOk" /> >>>>>> </camel:transform> >>>>>> </camel:route> >>>>>> >>>>>> <!-- Convert WS message and put it in the queue --> >>>>>> <camel:route> >>>>>> <camel:from uri="direct:saveWS" /> >>>>>> <camel:to uri="bean:webservice" /> >>>>>> <camel:to uri="queuingservice:queue:in" /> >>>>>> </camel:route> >>>>>> >>>>>> When calling the web service, we can see in the trace that the process >>>>>> starts correctly but the multicast seems to mix the routes and a error >>>>>> is >>>>>> generated : >>>>>> >>>>>> 17:16:08,562 | INFO | 12773...@qtp1-0 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-0 >>> >>>>>> http://localhost:8080/camel-example/incident --> >>>>>> setHeader(webservice), >>>>>> Pattern:InOut, >>>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>>> CamelCXFDataFormat=POJO}, >>>>>> Headers:{content-type=text/xml;charset=UTF-8, >>>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>>> Host=localhost:8080, Content-Length=640, >>>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>>> org.apache.cxf.headers.Header.list=[], >>>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>>> BodyType:org.apache.cxf.message.MessageContentsList, >>>>>> Body:[org.apache.camel.example.reportincident.inputreportincid...@ea9f6e] >>>>>> >>>>>> 17:16:08,578 | INFO | 12773...@qtp1-0 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-0 >>> setHeader(webservice) --> >>>>>> convertBodyTo(), Pattern:InOut, >>>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>>> CamelCXFDataFormat=POJO}, >>>>>> Headers:{content-type=text/xml;charset=UTF-8, >>>>>> operationName=ReportIncident, content.type=text/xml;charset=UTF-8, >>>>>> Host=localhost:8080, Content-Length=640, >>>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>>> origin=webservice, User-Agent=Jakarta Commons-HttpClient/3.1, >>>>>> operationNameSpace=http://reportincident.example.camel.apache.org, >>>>>> org.apache.cxf.headers.Header.list=[]}, >>>>>> BodyType:org.apache.cxf.message.MessageContentsList, >>>>>> Body:[org.apache.camel.example.reportincident.inputreportincid...@ea9f6e] >>>>>> >>>>>> 17:16:08,578 | INFO | 12773...@qtp1-0 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-0 >>> convertBodyTo() --> >>>>>> multicast(), Pattern:InOut, >>>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>>> CamelCXFDataFormat=POJO}, >>>>>> Headers:{content-type=text/xml;charset=UTF-8, >>>>>> operationName=ReportIncident, content.type=text/xml;charset=UTF-8, >>>>>> Host=localhost:8080, Content-Length=640, >>>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>>> origin=webservice, User-Agent=Jakarta Commons-HttpClient/3.1, >>>>>> operationNameSpace=http://reportincident.example.camel.apache.org, >>>>>> org.apache.cxf.headers.Header.list=[]}, >>>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@ea9f6e >>>>>> >>>>>> 17:16:08,593 | INFO | 12773...@qtp1-0 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-0 >>> multicast() --> >>>>>> to(direct:feedbackWS), Pattern:InOut, >>>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>>> CamelCXFDataFormat=POJO}, >>>>>> Headers:{content-type=text/xml;charset=UTF-8, >>>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>>> Host=localhost:8080, Content-Length=640, origin=webservice, >>>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>>> org.apache.cxf.headers.Header.list=[], >>>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@ea9f6e >>>>>> >>>>>> 17:16:08,593 | INFO | 12773...@qtp1-0 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-0 >>> to(direct:feedbackWS) --> >>>>>> transform(), Pattern:InOut, >>>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>>> CamelCXFDataFormat=POJO}, >>>>>> Headers:{content-type=text/xml;charset=UTF-8, >>>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>>> Host=localhost:8080, Content-Length=640, origin=webservice, >>>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>>> org.apache.cxf.headers.Header.list=[], >>>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@ea9f6e >>>>>> >>>>>> 17:16:08,625 | INFO | 12773...@qtp1-0 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-0 >>> transform() --> >>>>>> to(direct:saveWS), Pattern:InOut, >>>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>>> CamelCXFDataFormat=POJO}, >>>>>> Headers:{content-type=text/xml;charset=UTF-8, >>>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>>> Host=localhost:8080, Content-Length=640, origin=webservice, >>>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>>> org.apache.cxf.headers.Header.list=[], >>>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@ea9f6e >>>>>> >>>>>> 17:16:08,640 | INFO | 12773...@qtp1-0 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-0 >>> to(direct:saveWS) --> >>>>>> to(bean:webservice), Pattern:InOut, >>>>>> Properties:{org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>>> CamelCXFDataFormat=POJO}, >>>>>> Headers:{content-type=text/xml;charset=UTF-8, >>>>>> content.type=text/xml;charset=UTF-8, operationName=ReportIncident, >>>>>> Host=localhost:8080, Content-Length=640, origin=webservice, >>>>>> SOAPAction="http://reportincident.example.camel.apache.org/ReportIncident", >>>>>> User-Agent=Jakarta Commons-HttpClient/3.1, >>>>>> org.apache.cxf.headers.Header.list=[], >>>>>> operationNameSpace=http://reportincident.example.camel.apache.org}, >>>>>> BodyType:org.apache.camel.example.reportincident.InputReportIncident, >>>>>> Body:org.apache.camel.example.reportincident.inputreportincid...@ea9f6e >>>>>> >>>>>> 17:16:08,671 | INFO | 12773...@qtp1-0 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-0 >>> to(bean:webservice) --> >>>>>> to(queuingservice:queue:in), Pattern:InOut, >>>>>> Properties:{CamelBeanHolder=bean: webservice, >>>>>> org.apache.cxf.service.model.BindingOperationInfo=[BindingOperationInfo: >>>>>> {http://reportincident.example.camel.apache.org}ReportIncident], >>>>>> CamelCXFDataFormat=POJO}, BodyType:java.util.ArrayList, >>>>>> Body:[{org.apache.camel.example.reportincident.model.incident=org.apache.camel.example.reportincident.model.incid...@14bbd50[ >>>>>> incidentId=0 >>>>>> incidentRef=20 >>>>>> incidentDate=<null> >>>>>> givenName=Charles >>>>>> familyName=Moulliard >>>>>> summary=This is an OSGI report incident >>>>>> details=nothing to say >>>>>> [email protected] >>>>>> phone=+352 25 10 70 470 >>>>>> creationUser=<null> >>>>>> creationDate=<null> >>>>>> ]}] >>>>>> 17:16:08,750 | INFO | ActiveMQ Task | FailoverTransport >>>>>> | sport.failover.FailoverTransport 714 | Successfully connected to >>>>>> tcp://localhost:61616 >>>>>> 17:16:09,046 | INFO | enerContainer-55 | TraceInterceptor >>>>>> | rg.apache.camel.processor.Logger 88 | >>>>>> ID-dell-charles-1751-1238084114250-2-1 >>> queuingservice:queue:in --> >>>>>> to(bean:incidentSaver?method=process), Pattern:InOut, >>>>>> Properties:{JMSReplyTo=temp-queue://ID:dell-charles-1712-1238084102453-2:1:1}, >>>>>> Headers:{JMSXGroupID=null, >>>>>> JMSCorrelationID=ID-dell-charles-1751-1238084114250-3-0, JMSType=null, >>>>>> JMSExpiration=1238084188953, >>>>>> JMSMessageID=ID:dell-charles-1712-1238084102453-2:1:2:1:1, >>>>>> JMSRedelivered=false, JMSDeliveryMode=2, JMSPriority=4, >>>>>> JMSReplyTo=temp-queue://ID:dell-charles-1712-1238084102453-2:1:1, >>>>>> JMSTimestamp=1238084168953, JMSDestination=queue://in}, >>>>>> BodyType:java.util.ArrayList, >>>>>> Body:[{org.apache.camel.example.reportincident.model.incident=org.apache.camel.example.reportincident.model.incid...@127d19d[ >>>>>> incidentId=0 >>>>>> incidentRef=20 >>>>>> incidentDate=<null> >>>>>> givenName=Charles >>>>>> familyName=Moulliard >>>>>> summary=This is an OSGI report incident >>>>>> details=nothing to say >>>>>> [email protected] >>>>>> phone=+352 25 10 70 470 >>>>>> creationUser=<null> >>>>>> creationDate=<null> >>>>>> ]}] >>>>>> 17:16:31,250 | ERROR | 12773...@qtp1-0 | DeadLetterChannel >>>>>> | rg.apache.camel.processor.Logger 207 | Failed delivery for >>>>>> exchangeId: >>>>>> ID-dell-charles-1751-1238084114250-0-1. On delivery attempt: 0 caught: >>>>>> org.apache.camel.ExchangeTimedOutException: The OUT message was not >>>>>> received within: 20000 millis on the exchange: Exchange[Message: >>>>>> [{org.apache.camel.example.reportincident.model.incident=org.apache.camel.example.reportincident.model.incid...@14bbd50[ >>>>>> incidentId=0 >>>>>> incidentRef=20 >>>>>> incidentDate=<null> >>>>>> givenName=Charles >>>>>> familyName=Moulliard >>>>>> summary=This is an OSGI report incident >>>>>> details=nothing to say >>>>>> [email protected] >>>>>> phone=+352 25 10 70 470 >>>>>> creationUser=<null> >>>>>> creationDate=<null> >>>>>> ]}]] >>>>>> org.apache.camel.ExchangeTimedOutException: The OUT message was not >>>>>> received within: 20000 millis on the exchange: Exchange[Message: >>>>>> [{org.apache.camel.example.reportincident.model.incident=org.apache.camel.example.reportincident.model.incid...@14bbd50[ >>>>>> incidentId=0 >>>>>> incidentRef=20 >>>>>> incidentDate=<null> >>>>>> givenName=Charles >>>>>> familyName=Moulliard >>>>>> summary=This is an OSGI report incident >>>>>> details=nothing to say >>>>>> [email protected] >>>>>> phone=+352 25 10 70 470 >>>>>> creationUser=<null> >>>>>> creationDate=<null> >>>>>> ]}]] >>>>>> at >>>>>> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:269) >>>>>> at >>>>>> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:69) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:49) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:115) >>>>>> at >>>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:80) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:83) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:204) >>>>>> at >>>>>> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:145) >>>>>> at org.apache.camel.processor.Pipeline.process(Pipeline.java:115) >>>>>> at org.apache.camel.processor.Pipeline.process(Pipeline.java:89) >>>>>> at >>>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68) >>>>>> at >>>>>> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41) >>>>>> at >>>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:55) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:49) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:115) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:86) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:70) >>>>>> at >>>>>> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41) >>>>>> at >>>>>> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:65) >>>>>> at >>>>>> org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:47) >>>>>> at >>>>>> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:69) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:49) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:115) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:86) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:78) >>>>>> at >>>>>> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:68) >>>>>> at >>>>>> org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:191) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:86) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:78) >>>>>> at >>>>>> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:68) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:49) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:115) >>>>>> at >>>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:80) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:83) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:204) >>>>>> at >>>>>> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:145) >>>>>> at org.apache.camel.processor.Pipeline.process(Pipeline.java:115) >>>>>> at org.apache.camel.processor.Pipeline.process(Pipeline.java:89) >>>>>> at >>>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68) >>>>>> at >>>>>> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41) >>>>>> at >>>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:55) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:49) >>>>>> at >>>>>> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:115) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:86) >>>>>> at >>>>>> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:78) >>>>>> at >>>>>> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:52) >>>>>> at >>>>>> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41) >>>>>> at >>>>>> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:65) >>>>>> at >>>>>> org.apache.camel.component.cxf.CxfConsumer$1.invoke(CxfConsumer.java:85) >>>>>> at >>>>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57) >>>>>> at >>>>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) >>>>>> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) >>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:138) >>>>>> at >>>>>> org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37) >>>>>> at >>>>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95) >>>>>> at >>>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236) >>>>>> at >>>>>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89) >>>>>> at >>>>>> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:302) >>>>>> at >>>>>> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:265) >>>>>> at >>>>>> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:70) >>>>>> at >>>>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) >>>>>> at >>>>>> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) >>>>>> 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:534) >>>>>> at >>>>>> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:879) >>>>>> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:741) >>>>>> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:213) >>>>>> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:403) >>>>>> at >>>>>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) >>>>>> at >>>>>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522) >>>>>> >>>>>> >>>>>> Where is the problem ? >>>>>> >>>>>> Regards, >>>>>> >>>>>> >>>>>> >>>>> >>>>> ----- >>>>> Charles Moulliard >>>>> SOA Architect >>>>> >>>>> My Blog : http://cmoulliard.blogspot.com/ >>>>> http://cmoulliard.blogspot.com/ >>>> >>>> >>> >>> >>> ----- >>> Charles Moulliard >>> SOA Architect >>> >>> My Blog : http://cmoulliard.blogspot.com/ >>> http://cmoulliard.blogspot.com/ >> >> >> > > > ----- > Charles Moulliard > SOA Architect > > My Blog : http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/ > -- > View this message in context: > http://www.nabble.com/Camel-2.0---Multicast-issue----tp22725597p22738110.html > Sent from the Camel - Users mailing list archive at Nabble.com. > > -- Claus Ibsen Apache Camel Committer Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/ Twitter: http://twitter.com/davsclaus
