我在Mule中创建了一个默认捕获异常,只要在我的流中抛出错误就会执行。但是,似乎一旦达到异常结束(我在其中运行了几个组件),流程的执行将从该点恢复,这可以预期,因为错误被捕获。但是,如果触发了catch异常,我希望完全停止执行流程。我找到的唯一方法是在主流中添加一个错误过滤器,但这似乎是一个临时解决方案,因为我必须在流的每个元素之后添加一个错误过滤器以获得预期的结果。
答案 0 :(得分:1)
在您的例外策略中添加一个脚本组件来停止流程:
<scripting:component doc:name="Script">
<scripting:script engine="groovy"><![CDATA[
muleContext.getRegistry().get('<FLOW_NAME>').stop()
]]></scripting:script>
</scripting:component>