0

WSO2 プロキシ サービスからのすべての発信メッセージは、デフォルトで SOAP エンベロープによってラップされます。

構成によってそれを削除する可能性はありますか? SOAP エンベロープなしでプロキシ サービスから変換されたメッセージが必要です。

これを処理するために別のクラスを書きたくありません。

    <proxy xmlns="http://ws.apache.org/ns/synapse" name="risresult" transports="https,http,jms" statistics="disable" trace="disable" startOnLoad="true">
   <target>
      <inSequence>
         <property name="ContentType" value="text/plain" scope="default" type="STRING"/>
         <class name="com.test.guru.HL7RISPrescription"/>
         <property name="RESPONSE" value="true"/>
         <header name="To" action="remove"/>
            <send>
                <endpoint>
                    <address uri="jms:/prescription?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&amp;java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;java.naming.provider.url=tcp://localhost:61616" format="pox" />
                </endpoint>
            </send>
      </inSequence>
      <outSequence>
         <drop/>
      </outSequence>
      <faultSequence/>
   </target>
   <parameter name="transport.jms.ContentType">
      <rules>                           
         <jmsProperty>contentType</jmsProperty>                           
         <default>application/xml</default>                  
      </rules>
   </parameter>
   <description></description>
</proxy>

よろしく教祖 @gnanagurus

4

2 に答える 2

0

メッセージから SOAP エンベロープを削除するには、送信メディエータのすぐ上に次のプロパティを追加する必要があります。

<property name="messageType" value="application/xml" scope="axis2" type="STRING"/>

次のサンプルプロキシでテストしたところ、うまくいきました。

<?xml version="1.0" encoding="UTF-8"?>
    <proxy xmlns="http://ws.apache.org/ns/synapse"
           name="test"
           transports="https,http"
           statistics="disable"
           trace="disable"
           startOnLoad="true">
       <target>
          <inSequence>

             <property name="messageType"
                       value="application/xml"
                       scope="axis2"
                       type="STRING"/>
             <log level="full"/>
             <send>
                <endpoint>
                   <address uri="http://www.google.com"/>
                </endpoint>
             </send>
          </inSequence>
       </target>
       <description/>
    </proxy>
于 2016-01-19T08:42:44.000 に答える
0

使用できます

  format="pox" 

XML をエンドポイントに送信する 詳細については、次のブログ投稿を参照してください。

http://charithaka.blogspot.com/2010/07/message-format-transformations-with.html

于 2013-04-29T18:42:49.323 に答える