2012-05-24 58 views
0

我不知道我失蹤了什麼,但我的死信通道沒有開始。駱駝結構被定義爲阿帕奇駱駝:死信通道不起作用

<bean id="myDeadLetterHandler" class="org.apache.camel.builder.DeadLetterChannelBuilder"> 
     <property name="deadLetterUri" value="activemq:queue:TESTQUEUE"/> 
    </bean> 
     <route errorHandlerRef="myDeadLetterHandler"> 
      <from uri="seda:elixirBatchQueue" /> 
      <convertBodyTo type="String"/> 
      <inOnly uri="activemq:queue:someQ"/> 
     </route> 

這裏someQ不存在和TESTQUEUE確實存在。
日誌是:

DEBUG SendProcessor:114 - >>>> Endpoint[activemq://queue:someQ] Exchange[Message: [email protected]] 
DEBUG FailoverTransport:660 - Reconnect was triggered but transport is not started yet. Wait for start to connect the transport. 
DEBUG FailoverTransport:302 - Started. 
DEBUG FailoverTransport:653 - Waking up reconnect task 
DEBUG FailoverTransport:683 - urlList connectionList:[tcp://localhost:61616], from: [tcp://localhost:61616] 
DEBUG FailoverTransport:855 - Attempting connect to: tcp://localhost:61616 
+0

您使用的是哪個版本的Camel和ActiveMQ? – sully6768

+0

@ sully6768我使用的是Camel 2.9.2和ActiveMQ 5.5.1 –

+0

@ sully6768我發現一個問題與我的測試用例有關。當我嘗試連接到我已經刪除的'someQ'時。點擊路由後,activemq自動創建它,並且消息成功進入那裏。 –

回答

0

它現在工作的罰款。當路由啓動已刪除的隊列時,活動MQ正在創建已刪除的隊列。

+0

您是否可以將此QA標記爲已回答。 –

+0

@ClausIbsen當然。我只能將它標記爲兩天後回答。 –