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: org.dom4j.tree.DefaultDocument@afdb52]
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
4

1 に答える 1

0

現在は正常に動作しています。ルートが削除されたキューを開始していたときに、アクティブな MQ が削除されたキューを作成していました。

于 2012-05-24T17:52:02.140 に答える