java - 在流程中实现故障安全行为

标签 java mule mule-flow

我正在尝试在我的流程中创建一个故障安全场景。

我的流程如下所示。它涉及一些实习生调用网络服务的子流程。 在任何情况下,如果其中一个 Web 服务不可用,则会引发连接拒绝异常,并且整个处理会停止。

相反,我想要一个故障安全方案,其中即使当前出站调用失败,流程也应继续执行下一个子流程。

是否有任何消息处理器或流量控制处理器可以帮助在 Mule 中实现此行为。

下面给出的是我的抽象流程

<flow name="main_flow" >
    ....
    ....
    <flow-ref  name="subflow_1" />
    ....
    ....
    <flow-ref  name="subflow_2" />
    ....
    ....
    <flow-ref  name="subflow_3" />
    ....
    ....

</flow>

<sub-flow name="subflow_1">
    ....
    ....
    <out-bound call to web-service />
    ....
    ....
</sub-flow>

<sub-flow name="subflow_2">
    ....
    ....
    <out-bound call to web-service />
    ....
    ....
</sub-flow>

<sub-flow name="subflow_3">
    ....
    ....
    <out-bound call to web-service />
    ....
    ....
</sub-flow>

最佳答案

您可以通过流程实现故障安全行为。

<flow name="main_flow" >
    ....
    ....
    <flow-ref  name="flow_1" />
    ....
    ....
    <flow-ref  name="flow_2" />
    ....
    ....
    <flow-ref  name="flow_3" />
    ....
    ....

</flow>

<flow name="flow_1" processingStrategy="synchronous" >
    ....
    ....
    <out-bound call to web-service />
    ....
    <catch-exception-strategy >
      .... Your FailSafe code to recover. Also you will have the exception here.
     </catch-exception-strategy>
</flow>

这样您就可以使用流程来实现故障安全行为。

快乐编码:)

关于java - 在流程中实现故障安全行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14653881/

相关文章:

java - Mule 错误,只有所有者线程可以写入 http 模块仍然发生的消息

java - 尝试在 Mule 中创建动态 HTTP 端点时出现 java.lang.IllegalArgumentException

java - Mule ESB - 在流程中使用现有的 servlet

java - 同一文件上的不同 log4j 模式取决于日志级别?

java - JAVA中的动态Json解析并找到键和值对?

java - 将 servlet 类扩展为自定义类以获得更多自定义响应

mule - 是否有社区版的Anypoint Studio for Mule?

http - 如何删除 Mule 默认 header 并设置从第三方 API 收到的 header

java - 如何闯入MULE中的流程中间并将消息返回给客户端..?

java - 我怎么知道 PrintWriter 中套接字连接的状态