是否可以在Catch Exception Strategy中访问例外 - >转换消息组件?我知道我可以通过 MEL#[exception.cause] 访问它,但我无法找到有关如何在DataWeave中访问它的任何内容。
非常感谢。
答案 0 :(得分:4)
你可以在有效载荷中设置异常(如@Ralph Rimorin建议的那样),或者你可以将它设置为变量并在dw中使用 -
<catch-exception-strategy doc:name="Catch Exception Strategy">
<logger message="#[exception.message]" level="ERROR" doc:name="Logger"></logger>
<set-variable variableName="exception" value="#[exception]"
doc:name="Set Exception to FlowVars"
doc:description="This is to ensure that exception object is avaiable to Send Support Email component which uses exception from flowVars instead of the one set by mule at #[exception] as it sometimes tend to get lost."></set-variable>
<dw:transform-message doc:name="Transform Message">
<dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
{
a:flowVars.exception
}]]></dw:set-payload>
</dw:transform-message>
</catch-exception-strategy>
答案 1 :(得分:1)
@Lukas,如果通过流引用捕获异常,则调用流将能够使用dataweave评估异常。在Catch异常策略中,尝试将异常设置为有效负载,然后在调用流中设置,数据编辑将处理该异常。