假设我有一个有效载荷:
{Name=User1, Age=29}
和变量:
{Address=Planet Earth}
我想检查变量是否为空,然后将其添加到有效负载中。所以最终结果将是:
{Name=User1, Age=29, Address=Planet Earth}
如何?我尝试通过payload.Put(变量),但不允许我这样做。
使用Transform组件的DataWeave可以使用表达式:payload ++ flowVars.variable
如果您不想或不能使用DataWeave,那么您可以使用MEL表达式,该表达式使用Map接口的Java方法Map.putAll()
。您不能使用<set-payload>
,因为它不返回值。相反,您可以使用<expression-component>
组件。
的例子:
<expression-component doc:name="Expression"><![CDATA[payload.putAll(flowVars.variable)]]></expression-component>