2013-06-06 27 views
0

我從我的前端獲取數組列表,我需要使用Wso2esb和dss插入到表中,我幾乎已經使用iterator來完成該功能。我需要對前端做出響應每當插入該數組列表時結束。我希望 我的代碼是這樣的我們如何使用wso2esb來計算Iterator中的對象

<iterate continueParent="true" 
         id="QuestionListMobile" 
         expression="//QuestionsList"> 
        <target> 
        <sequence> 
         <property name="ttemplateformid" 
            expression="get-property('ttemplateformid')" 
            scope="default" 
            type="STRING"/> 
         <payloadFactory> 
          <format> 
           <p:Insert_ttemplatedetails_Mobile_Op xmlns:p="http://ws.wso2.org/dataservice"> 
           <xs:templateformid xmlns:xs="http://ws.wso2.org/dataservice">$1</xs:templateformid> 
           <xs:formtemplatesectiondetailid xmlns:xs="http://ws.wso2.org/dataservice">$2</xs:formtemplatesectiondetailid> 
           <xs:questionid xmlns:xs="http://ws.wso2.org/dataservice">$3</xs:questionid> 
           <xs:weightage xmlns:xs="http://ws.wso2.org/dataservice">0</xs:weightage> 
           <xs:rank xmlns:xs="http://ws.wso2.org/dataservice">$4</xs:rank> 
           <xs:score xmlns:xs="http://ws.wso2.org/dataservice">$5</xs:score> 
           <xs:remarks xmlns:xs="http://ws.wso2.org/dataservice">$6</xs:remarks> 
           <xs:feedback xmlns:xs="http://ws.wso2.org/dataservice">$7</xs:feedback> 
           </p:Insert_ttemplatedetails_Mobile_Op> 
          </format> 
          <args> 
           <arg expression="get-property('ttemplateformid')"/> 
           <arg expression="//sectionQuestionMapId/text()"/> 
           <arg expression="//QuestionId/text()"/> 
           <arg expression="//Rank/text()"/> 
           <arg expression="//answer/text()"/> 
           <arg expression="//remark/text()"/> 
           <arg expression="//Feedback/text()"/> 
          </args> 
         </payloadFactory> 
         <log level="full"/> 
         <send receive="QuestionsInsertion_Seq3"> 
          <endpoint> 
           <address uri="http://localhost:9764/services/ttemplatesectiondetail_DataService/" 
             format="soap11"/> 
          </endpoint> 
         </send> 
         <log level="full"/> 
        </sequence> 
        </target> 
       </iterate> 

我很好我怎麼能知道上面我多少排列得算這是迭代次數的任何obejects

<sequence xmlns="http://ws.apache.org/ns/synapse" 
      name="QuestionsInsertion_Seq3" 
      onError="fault"> 
    <property name="FORCE_ERROR_ON_SOAP_FAULT" 
      value="true" 
      scope="axis2" 
      type="STRING"/> 
    <property xmlns:f="http://ws.wso2.org/dataservice" 
      xmlns:ns="http://org.apache.synapse/xsd" 
      name="ttemplatedetailid" 
      expression="//f:ttemplatedetailid/text()" 
      scope="default" 
      type="STRING"/> 
    <log> 
<property xmlns:ns="http://org.apache.synapse/xsd" 
      name="Total" 
      expression="count(//QuestionId/text())" 
      scope="default" 
      type="STRING"/> 
     <property xmlns:f="http://ws.wso2.org/dataservice" 
       xmlns:ns="http://org.apache.synapse/xsd" 
       name="ttemplatedetailid" 
       expression="//f:ttemplatedetailid/text()"/> 
    </log> 

我登錄電子QuesionId計數,但我沒有得到我得到的總數只有1.0 我需要只在代理計數或按順序 thanx提前

回答

0

你不能算迭代..你現在正在嘗試的是y您在接收序列中獲得DS響應,並從響應中嘗試讀取值。因此,請檢查您的回覆,並查看您從端點

+0

thanx中獲得的重播情況。我在wso2dss中使用返回的密鑰,所以我如何計算每次我按順序檢索的關鍵所以我可以知道有多少個鍵generated.how我可以使它作爲響應數組 – user1983299

+0

我越來越多的答覆ttemplatedetails所以我怎麼能保持在一個屬性 – user1983299

相關問題