Как отправить оригинальное сообщение в DLQ после обработки - PullRequest
0 голосов
/ 04 июля 2019

Как настроить маршрут так, чтобы исходное сообщение отображалось в dlq? Теперь, если мой сервер недоступен, сообщения появляются в dlq после обработки, например: сообщение с телом «origin_message» находится в очереди my_test, после обработки в myProcess я изменяю его на «new_message», и если сервер недоступен или ответил с кодами 400+ 500+, в моей очереди my_dlq есть сообщение с телом "new_message"

<bean id="myDeadLetterErrorHandler" class="org.apache.camel.builder.DeadLetterChannelBuilder">
        <property name="deadLetterUri" value="activemq://my_dlq"/>
</bean>

<bean id="myProcess" class="mapper.MyProcess" />    

    <camelContext xmlns="http://camel.apache.org/schema/blueprint">

      <route errorHandlerRef="myDeadLetterErrorHandler">
        <from uri="activemq://my_test"/>
        <process ref="myProcess" />
        <to uri="http://localhost:3000"/>
      </route>

    </camelContext>

1 Ответ

0 голосов
/ 04 июля 2019

Вы можете настроить useOriginalMessage=true в обработчике ошибок.

...