访问变压器中的变量
Accessing variables in transformer
我是 运行 Mule CE,在我的一个流程中,我正在访问一个包含复杂对象的静态 XML 文件。
我用一个bean读了这个并将它保存在一个变量中。
<set-variable variableName="Settings" value="#[app.registry['LoadSetting']]" doc:name="Variable"/>
到目前为止一切顺利。
然后,在我的 Transformer 中,我需要读取这些值,使用正确的键找到对象并在我的有效负载中填充一些值。
那么,我如何在我的 Transformer class 中访问这个变量,比如
message.getInvocationProperty("test");
据我了解,"message" 本身不可用..或者是吗?
我确实在问题 here 中找到了建议,但我并没有真正理解那个答案(毕竟是星期五..)
此致
你能分享你的转变吗class?
基本上,如果您的转换 class 扩展 org.mule.transformer.AbstractMessageTransformer
,您就可以访问 "message"。您可以从 Mule User Guide or Slideshare.
中找到一些简单的示例
作为另一种选择,您可以使用 @Expr
annotation。例如,将此表达式 @Expr("flowVars['Settings']") String myFlowVarSettings
作为参数传递给您的转换 class。然后用它来完成负载。
我是 运行 Mule CE,在我的一个流程中,我正在访问一个包含复杂对象的静态 XML 文件。 我用一个bean读了这个并将它保存在一个变量中。
<set-variable variableName="Settings" value="#[app.registry['LoadSetting']]" doc:name="Variable"/>
到目前为止一切顺利。 然后,在我的 Transformer 中,我需要读取这些值,使用正确的键找到对象并在我的有效负载中填充一些值。 那么,我如何在我的 Transformer class 中访问这个变量,比如
message.getInvocationProperty("test");
据我了解,"message" 本身不可用..或者是吗?
我确实在问题 here 中找到了建议,但我并没有真正理解那个答案(毕竟是星期五..)
此致
你能分享你的转变吗class?
基本上,如果您的转换 class 扩展 org.mule.transformer.AbstractMessageTransformer
,您就可以访问 "message"。您可以从 Mule User Guide or Slideshare.
作为另一种选择,您可以使用 @Expr
annotation。例如,将此表达式 @Expr("flowVars['Settings']") String myFlowVarSettings
作为参数传递给您的转换 class。然后用它来完成负载。