2017-01-28 9 views
0

私はwso2 esbを初めて使用しています。今度は反復仲介者に問題があります。 私は自分のコードでiterateを使い、エンドポイントに希望の値を送りますが、残念ながらイテレータを終了することはできません。 は、ここで私は反復した後、ログを見ることができない私のコードはwso2 esbの反復を終了できません

<iterate preservePayload="true" 
       attachPath="//csv-set" 
       expression="//csv-set/searchGuestIdentity" 
       sequential="true"> 
     <target> 
      <sequence> 
       <xslt key="gov:/xmltocsv.xsl"/> 
       <xslt key="gov:/new8.xsl"/> 
       <xslt key="gov:/RemoveXMLdeclaration.xsl"/> 
       <send> 
       <endpoint> 
        <http format="soap11" 
          method="GET" 
          uri-template="http://myendpoint/services/GuestIdentityService"/> 
       </endpoint> 
       </send> 
       <log level="full"/> 
      </sequence> 
     </target> 
    </iterate> 
    <log> 
     <property name="log" value="end of iterate"/> 
    </log> 

です。 誰かが私を助けて、なぜイテレータを終了できないと言うことができますか? エンドポイントに値を送信したときにも、どのように結果を確認できますか?

答えて

0

イテレータ内で送信メディエータを使用すると、レスポンスが出力されます。ここで、集約メディエーター[1]を使用して応答を集約できます。ここでは例を見つけることができます[2]。仲介者を送る代わりに、あなたが呼び出しメディエーター[3] [4]を使用する場合、応答は順番にそれ自身で来て、論理の残りは実行されます。

[1] https://docs.wso2.com/display/ESB500/Aggregate+Mediator

[2] http://shriwithjava.blogspot.com/2015/11/how-to-use-iterator-mediator-in-wso2-esb.html

[3] https://docs.wso2.com/display/ESB500/Call+Mediator

[4] https://medium.com/@pubududp/wso2-esb-how-to-use-call-mediator-457f2b387b94#.iu53akgyr

+0

私は以下のコードで集計を使用しました。私の問題は、なぜ私はこのログを見ることができないということです:なぜか分かりますか? –

+0

私はコールメディエーターを使用しても、このログを見ることができません "返信Mehrnooshに感謝します" " –

0

コールメディエーターの代わりに送信メディエーターとコールメディエータ用はいセットを使用。次に、シーケンスの終わりに応答メディエーターを使用して、ログメディエーターのプロパティの値を確認することができます

+0

私はどこで電話をするのですか?あなたは私に例を教えてくれますか? –

+0

コールメディエータにブロッキングコールのオプションがあります。これをtrueに設定します。 https://docs.wso2.com/display/ESB490/Call+Mediator。コールメディエーターの後に応答メディエーターを挿入すると、それはうまくいくでしょう(コールメディエーターの後にループバックメディエーターを置くことを要求した場合) – Mehrnoosh

関連する問題