我正在尝试在 Mule 中实现异常处理。
我使用回滚异常策略重新尝试消息,然后将其视为错误消息。
我有如下异常策略。
<rollback-exception-strategy maxRedeliveryAttempts="3" doc:name="Rollback Exception Strategy">
<logger message="message1 #[exception]" level="INFO" doc:name="Logger"/>
<file:outbound-endpoint path="C:\\MuleSamples\backout" responseTimeout="10000" doc:name="File"/>
<on-redelivery-attempts-exceeded doc:name="Redelivery exhausted">
<logger message="#[message.exceptionPayload]" level="INFO" doc:name="Logger"/>
<file:outbound-endpoint path="C:\\MuleSamples\backout" outputPattern="backoutmsg.xml" responseTimeout="10000" doc:name="File"/>
</on-redelivery-attempts-exceeded>
</rollback-exception-strategy>
正如我所料,这不起作用,即使我将 RedeliveryAttempts 配置为 3,流也不会重新传递消息。它只是处理一次。
我不明白我在这里缺少什么。
我有 WMQ 入站端点并使用了 WMQ_transaction。
任何帮助将不胜感激。