Mule ESB从groovy设置有效载荷

时间:2016-09-16 12:52:23

标签: groovy mule

我在Groovy脚本中操作过数据。我想输出字符串类型的变量作为有效负载。我可以直接从Groovy设置有效负载吗?如果是的话。一个例子会有所帮助。

2 个答案:

答案 0 :(得分:1)

您可以访问全局变量payload来访问或更改有效负载。此外,您可以返回由处理器设置为有效负载的任何groovy变量。 喜欢

<flow name="Flow">
    <http:listener config-ref="HTTP_Listener_Configuration" path="/test" doc:name="HTTP"/>
    <set-payload value="#[15]" doc:name="Set Payload"/>
    <scripting:component doc:name="Groovy">
        <scripting:script engine="Groovy"><![CDATA[

             int b = payload + 1;
             String c = "Result: " + b;
             return c ;

]]></scripting:script>
    </scripting:component>
    <logger message="Final result :- #[payload]" level="INFO" doc:name="Logger"/>
</flow>

希望这有帮助。

答案 1 :(得分:0)

要从Groovy设置有效负载,我们可以直接分配它,例如:payload = theVariable

出于测试目的,我们可以尝试以下简单流程:

<flow name="simpleFlow">
    <http:listener config-ref="HTTP_Listener_Configuration" path="/" doc:name="HTTP"/>
    <scripting:component doc:name="Groovy">
        <scripting:script engine="Groovy"><![CDATA[int a = 1;
int b = a + 1;
String c = "Result: " + b;

payload = c;]]></scripting:script>
    </scripting:component>
    <logger message="#[payload]" level="INFO" doc:name="Logger"/>
</flow>