2012-12-14 6 views
1

기본적으로 데이터 서비스 호출에서 결과 배열을 얻고 있는데이 배열을 java에 전달해야합니다. 어떻게 든 속성 중재자에 결과 배열을 저장하려고 시도하고 Java로 전달합니다. 여기 WSO2 ESB 결과의 저장소 배열

데이터 서비스 결과의 예입니다

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

그리고 여기에 내가 부르고 내 자바 기능의 예는 다음과 같습니다

public static String testFunction(int[] array); 

을 그리고 여기이 자바에 대한 페이로드 함수 :

<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 기능에 보낼 수 있습니까?

답변

1

이렇게 해보십시오.

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