Hi,
Routing slip is still giving me some trouble. Right now I have:
JMS BC--> camel SU (routing slip) --> bean1--> bean2
My DSL looks like:
from(SERVICE_IN).setHeader( "routingSlipHeader", BEAN1+","
+BEAN2).routingSlip();
I'm pretty sure that all 3 SUs have been configured properly and that the
URI's are correct because
from(SERVICE_IN).to (BEAN1) and from(SERVICE_IN).to(BEAN2) work just fine.
The log shows:
INFO - JBIContainer - ServiceMix JBI Container
(ServiceMix) started
INFO - JDBCAdapterFactory - Database driver recognized:
[apache_derby_embedded_jdbc_driver]
INFO - LogTask - Logging system reconfigured using
file: file:/C:/apache-servicemix-3.3/conf/log4j.xml
ERROR - DeadLetterChannel - Failed delivery for exchangeId:
ID-a804-blah/1687-1232359269031/0-0. On delivery attempt: 0 caught:
java.lang.ClassCastException: org.apache.camel.impl.DefaultExchange
java.lang.ClassCastException: org.apache.camel.impl.DefaultExchange
at
org.apache.servicemix.camel.JbiMessage.getExchange(JbiMessage.java:56)
at
org.apache.servicemix.camel.JbiMessage.getExchange(JbiMessage.java:35)
at org.apache.camel.impl.MessageSupport.getBody(MessageSupport.java:54)
at org.apache.camel.impl.MessageSupport.getBody(MessageSupport.java:50)
at
org.apache.servicemix.camel.JbiBinding.getJbiInContent(JbiBinding.java:149)
at
org.apache.servicemix.camel.JbiBinding.makeJbiMessageExchange(JbiBinding.java:74)
at
org.apache.servicemix.camel.CamelConsumerEndpoint.process(CamelConsumerEndpoint.java:100)
at
org.apache.servicemix.camel.JbiEndpoint$JbiProducer.process(JbiEndpoint.java:87)
at org.apache.camel.processor.RoutingSlip.process(RoutingSlip.java:79)
at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:69)
at
org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
at
org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
at
org.apache.servicemix.camel.CamelProviderEndpoint.handleActiveProviderExchange(CamelProviderEndpoint.java:115)
at
org.apache.servicemix.camel.CamelProviderEndpoint.process(CamelProviderEndpoint.java:73)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:600)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:554)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:510)
at
org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:623)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
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)
ERROR - CamelJbiComponent - Error processing exchange InOut[
id: ID:192.168.2.79-11eee55e5f9-11:0
status: Active
role: provider
service: {http://example.com/exampleServiceCamel123}CamelEXService123
endpoint: camel192-168-2-79-11eee55e5f9-27-0
in: <?xml version="1.0"
encoding="UTF-8"?><onMessageExchange><exchange>hai</exchange></onMessageExchange>
]
java.lang.ClassCastException: org.apache.camel.impl.DefaultExchange
at
org.apache.servicemix.camel.JbiMessage.getExchange(JbiMessage.java:56)
at
org.apache.servicemix.camel.JbiMessage.getExchange(JbiMessage.java:35)
at
org.apache.camel.impl.DefaultMessage.getHeader(DefaultMessage.java:47)
at
org.apache.camel.processor.DeadLetterChannel.incrementRedeliveryCounter(DeadLetterChannel.java:256)
at
org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:120)
at
org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
at
org.apache.servicemix.camel.CamelProviderEndpoint.handleActiveProviderExchange(CamelProviderEndpoint.java:115)
at
org.apache.servicemix.camel.CamelProviderEndpoint.process(CamelProviderEndpoint.java:73)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:600)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:554)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:510)
at
org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:623)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
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)
What could be going wrong?
Also,
How do I set the routingSlipHeader in the JMS client that invokes the BC? I
tried using the setStringProperty function, but that didn't work.
Thanks,
Sylvester
--
View this message in context:
http://www.nabble.com/Camel-in-servicemix-problems-with-routing-slip-tp20867324p21540254.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.