1

在 Mule 中,我使用“复杂”流引用的捕获异常策略。我在异常策略中放置了一个 jdbc 组件,以在出现错误时更新表记录 如何访问异常堆栈跟踪以将其记录在此表上?我在异常策略开始时检查了有效负载,它org.apache.commons.httpclient.methods.PostMethod实际上是我在 http 调用期间收到错误的类型。

4

1 回答 1

3

在异常策略中异常在 Payload 中不可用。它在 Message 对象的 exceptionPayload 变量中可用。

利用

异常异常 = (Exception)message.getExceptionPayload().getException();

这给出了 ExceptionPaylaod 对象,其 getException() 方法提供了异常对象。

要获取堆栈跟踪,请使用以下命令。

StackTraceElement[] ste = exception.getCause().getStackTrace();

从那里你可以继续你的需要。

希望这可以帮助。

于 2013-09-04T12:48:39.750 回答