首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >回滚异常策略

回滚异常策略
EN

Stack Overflow用户
提问于 2013-09-17 21:03:35
回答 2查看 1.8K关注 0票数 2

我试图在Mule中实现异常处理。

在将该消息视为错误消息之前,我使用回滚异常策略重新尝试该消息。

我有如下的例外策略。

代码语言:javascript
复制
<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。

任何帮助都将不胜感激。

EN

回答 2

Stack Overflow用户

发布于 2015-10-29 14:10:01

关于回滚异常策略的骡子文件说:

当您的流使用以下两种传输类型之一时,Mule尝试消息重传:事务性传输或可靠

在Mule中,VM、JDBC、JMS传输是事务性的,JMS、FTP、File、IMAP是可靠的传输。

因此,如果流有上述入站端点之一,回滚异常策略将重新尝试。

票数 1
EN

Stack Overflow用户

发布于 2014-03-06 05:13:45

请记住,回滚异常策略机制仅适用于IllegalStateException.。对于所有其他例外情况,您必须定义不同的策略。

Javadocs的IllegalStateException声明:

在非法或不适当的时间调用方法的信号。换句话说,对于请求的操作,Java环境或Java应用程序没有处于适当的状态。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18859848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档