基本上我从数据服务调用获得了一系列结果,我需要将这个数组传递给java。我试图以某种方式将结果数组存储在属性中介中,然后将其传递给java。
以下是数据服务结果的示例:
<testResponse>
<result>
<PARAM1>0</PARAM1>
<PARAM2>20</PARAM2>
<PARAM3>40</PARAM3>
</result>
</testResponse>
这是我正在调用的java函数的一个示例:
public static String testFunction(int[] array);
这是这个java函数的有效负载:
<payloadFactory>
<format>
<p:testFunction xmlns:p="http://test.com">
<xs:array xmlns:xs="http://test.com">$1</xs:array>
</p:testFunction>
</format>
<args>
<arg xmlns:ns="http://org.apache.synapse/xsd" expression="$ctx:PROPERTYARRAY"/>
</args>
</payloadFactory>
我对如何设置“PROPERTYARRAY”感到困惑。
现在我正在做类似的事情:
<property xmlns:ns="http://org.apache.synapse/xsd" name="PROPERTYARRAY" expression="//testResponse/result/" scope="default" type="STRING"/>
此日志为“02040”。
如何以数组格式获取并发送到我的java函数?
答案 0 :(得分:1)
试试这个;
<property name="propertyarray" expression="$body"/>