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.

Reply via email to