Mule:将原始邮件返回给流(如For Each)

时间:2016-01-12 11:09:17

标签: mule mule-component anypoint-studio

在每个介绍中我们都有:" Foreach作用域将一个集合拆分为元素,并通过嵌入在作用域中的处理器迭代处理它们,然后将原始消息返回给流。"

我想知道我们是否有一个表单将原始消息返回到流程中,当流程中间我们处理新消息(有效负载)类似For Each工作,但它不是一个案例使用For Each!

示例:

流量(有效载荷AA) - > ["子"流量(有效载荷BB)] - >流量(有效载荷AA)

有表格可以吗?

1 个答案:

答案 0 :(得分:2)

最简单的方法是使用一个richver,它将sub-flow的结果存储在flowVar中,以便不修改原始有效负载:

<enricher target="#[flowVars.someSubFlowResult]">
 <flow-ref name="mySubFlow" />
</enricher>

或者可选地,在输入流时将原始有效载荷手动存储到流变量中,并且在流的末尾使用流变量将有效载荷设置回原始有效载荷。例如:

<set-variable variableName="originalPayload" value="#[payload]" />

<!-- do some other processing -->

<set-payload value="#[flowVars.originalPayload]" />