2012-12-14 1 views
1

Fondamentalement, je reçois un tableau de résultats d'un appel de service de données et j'ai besoin de passer ce tableau dans Java. J'essaye de stocker le tableau de résultats dans un médiateur de propriété d'une façon ou d'une autre, et ensuite le passer en Java.WSO2 ESB Stocke les résultats dans une propriété

Voici un exemple des résultats de services de données:

<testResponse> 
    <result> 
     <PARAM1>0</PARAM1> 
     <PARAM2>20</PARAM2> 
     <PARAM3>40</PARAM3> 
    </result> 
</testResponse> 

Et voici un exemple de ma fonction java que je vous appelle:

public static String testFunction(int[] array); 

Et voici une charge utile pour cette java fonction:

<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> 

Je suis confus sur la façon de définir "PROPERTYARRAY".

En ce moment je suis en train de faire quelque chose comme:

<property xmlns:ns="http://org.apache.synapse/xsd" name="PROPERTYARRAY" expression="//testResponse/result/" scope="default" type="STRING"/> 

Et le journal de c'est "02040".

Comment puis-je obtenir ce format en tableau et envoyer à ma fonction java?

Répondre

1

Essayez comme ceci;

<property name="propertyarray" expression="$body"/>