Java Mule:知道哪个组件/端点抛出了带有默认捕获异常的异常

Java Mule:知道哪个组件/端点抛出了带有默认捕获异常的异常,java,mule,mule-el,Java,Mule,Mule El,对于整个流/子流,我有一个默认的捕获异常策略。但是,我希望能够知道哪个组件/端点引发了异常,这样我就可以尝试重新启动流,而我还没有弄清楚如何做到这一点 有没有简单的方法来判断哪个组件/端点抛出了异常,并且能够通过查看计数器变量来判断它是否在foreach中,以及在什么时候 谢谢 您可以在流程开始时设置一个变量,如下所示: <set-variable variableName="flowName" value="Your_flow_name"/> 并在异常策略中获取流名称,如[flo

对于整个流/子流,我有一个默认的捕获异常策略。但是,我希望能够知道哪个组件/端点引发了异常,这样我就可以尝试重新启动流,而我还没有弄清楚如何做到这一点

有没有简单的方法来判断哪个组件/端点抛出了异常,并且能够通过查看计数器变量来判断它是否在foreach中,以及在什么时候


谢谢

您可以在流程开始时设置一个变量,如下所示:

<set-variable variableName="flowName" value="Your_flow_name"/>
并在异常策略中获取流名称,如[flowName]

编辑:

要触发流,请创建一个实现可调用接口的java组件,从上下文获取MuleClient并使用send或dispatch方法将负载发送到流。Send导致MuleClient等待响应,而dispatch则不等待响应


更多信息请点击此处:

谢谢您的回答。从这里开始,在例外情况下,是否有一种方法可以以某种方式使用[flowName]重新启动流?要触发流,您可以从上下文获取MuleClient,然后使用dispatch或send with payload。更新了我的回答知道如何从默认捕获异常获取错误消息吗?这将帮助我找出错误所在,以及是否重新启动流。异常在[Exception]变量中可用。您也可以在尝试记录[exception.summaryMessage]时使用[exception.summaryMessage],我收到以下错误:org.mule.api.MessaginException:[错误:缺少左节点][附近:{…发生错误:'+[exception.summaryMessage],'e..}您确定它有效吗?