0

プロキシ サービスを作成し、インライン wsdl を使用して試行ツールからデータを渡すことができる状況があります。その後、try-it から in seq に渡されたデータを取得したいと思います。その後、inline-wsdl は使用しません。「インシーケンス」では、「user」というプロパティを設定したカスタムクラスメディエーターを使用し、そのプロパティ値(ユーザー)をプロパティメディエーターに保存しました。今、私はこのプロパティを一連の応答として送信したいと考えています。これを行う方法。助けてください...私のプロキシコードは次のとおりです。

<proxy xmlns="http://ws.apache.org/ns/synapse" name="ProviderPublication" transports="https,http" statistics="disable" trace="disable" startOnLoad="false">
   <target>
      <inSequence>
         <property xmlns:xs="http://www.openandaway.org/xml/BBC/" name="URI" expression="//xs:SessionID" scope="default" type="STRING"/>
         <payloadFactory>
            <format>
               <p:Session xmlns:p="http://www.openandaway.org/xml/BBC/">
                  <xs:ChannelURI xmlns:xs="http://www.openandaway.org/xml/BBC/">$1</xs:ChannelURI>
               </p:Session>
            </format>
            <args>
               <arg xmlns:ns="http://org.apache.synapse/xsd" expression="get-property('URI')"/>
            </args>
         </payloadFactory>
         <log level="full">
            <property name="Inside_In_Sequence" value="---------Hi i am inside in sequence--------------"/>
         </log>
         <log level="full">
            <property name="PropValFromURI" expression="get-property('URI')"/>
         </log>
      </inSequence>
      <outSequence>
         <log level="full">
            <property name="Inside_Out_Sequence" value="-------Hi inside Out Sequence--------------------"/>
         </log>
         <property name="GetDataFromINSeq" expression="get-property('URI')" scope="default" type="STRING"/>
         <log level="full">
            <property name="GetPropValueFromInSeq" expression="get-property('URI')"/>
         </log>
         <send/>
      </outSequence>
   </target>
   <publishWSDL uri="http://10.224.188.87:2425/BBC1.0/services/BBCPublicationService?wsdl"/>
   <description></description>
</proxy>

上記のコードでは、out シーケンスに入ることができません。アウトシーケンスにヒットしていません。どこが間違っていますか?

4

2 に答える 2

0

アウトシーケンスでそのプロパティにアクセスできます。以下のスレッドを参照してください。

stWSO2ESB OutSequence 処理

プロパティを inSequence から outSequence に渡す

于 2013-04-02T09:12:09.413 に答える
0

プロキシの順序どおりに、メッセージをバックエンドに送信していません。つまり、順番に送信部分が表示されません。メッセージが送信されないと、アウトシーケンスに応答が返ってきません。

クラスメディエーターによって設定されたプロパティへのアクセスに関する最初の質問については、スコープを「シナプス」に設定してプロパティを設定すると、プロキシの任意の場所でアクセスできます。

于 2013-04-02T10:51:30.113 に答える