我有几条骆驼路线定义了这样的“电路”(其中qx
是队列号x,px
是处理器号x)
q1 -> p1 -> q2 -> p2 -> q1 -> p1 -> q3 -> p3 -> (...)
为
from("jms:queue:q1).process("p1").dynamicRouter().method(DynamicRouterTest.class, "nextStep");
from("jms:queue:q2).process("p2").to("jms:queue:q1");
from("jms:queue:q3).process("p3").to(...);
您会注意到,我重用了队列q1
(出于结构目的),dynamicrouter
动态地指示消息来自q1
的目的地,但是消息到达时的目的地p2
,我收到这样的超时异常:
2018-09-22 14:21:21,443 [Camel (camel-1) thread #6 - JmsConsumer[QueueTest]] WARN org.apache.camel.component.jms.EndpointMessageListener - Execution of JMS message listener failed. Caused by: [org.apache.camel.RuntimeCamelException - org.apache.camel.ExchangeTimedOutException: The OUT message was not received within: 20000 millis due reply message with correlationID: ID:373034344443444200000000000000000000000000000000 not received.
如何在不禁用jms答复的情况下使其正常工作?