0

テキスト/プレーンコンテンツを返すサービスがあります。応答メッセージは次のようになります: RESP0Success" しかし、ESB4.0.3 では、応答は次のようになります。

<text xmlns="http://ws.apache.org/commons/ns/payload">&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;message&gt;&lt;MsgType&gt;RESP&lt;/MsgType&gt;&lt;ReturnCode&gt;0&lt;/ReturnCode&gt;&lt;ReturnMessage&gt;Success&lt;/ReturnMessage&gt;&lt;/message&gt;
 </text>

axis2.xml にビルダーとフォーマッターを設定します。しかし、役に立たない。

<messageBuilder contentType="text/plain"             
class="org.apache.axis2.format.PlainTextBuilder"/>
<messageFormatter contentType="text/plain"
class="org.apache.axis2.format.PlainTextFormatter"/>

axis2.xmlでビルダーとフォーマッターを設定する方法を教えてもらえますか? 私のサービス構成は次のとおりです。

<proxy xmlns="http://ws.apache.org/ns/synapse" name="TextPlain" transports="https,http" statistics="disable" trace="disable" startOnLoad="true">
   <target>
      <inSequence>
         <property name="ContentType" value="text/plain" scope="axis2" />
         <log level="full" />
      </inSequence>
      <outSequence>
         <log level="full" />
         <property name="ContentType" value="text/plain" scope="axis2" />
         <send />
      </outSequence>
      <endpoint>
         <address uri="http://172.20.28.206:8080/AAAService/recieveMsg" format="pox">
         </address>
      </endpoint>
   </target>
</proxy>
4

2 に答える 2

0

メッセージの ContentType を指定する必要があります。HTTP からの入力には Soap エンベロープと本文が含まれるため、コンテンツはそのようなタグ内に含まれています。

エンドポイントにメッセージのタイプが text/plain であることを伝えると、PlainTextFormatter はそれを実際のテキストに変換し、エンドポイントに送信します (axis2.xml は単なる構成です。使用することを伝える必要があります。今は PlainTextFormatter)

この行がありません:

<property name="ContentType" value="text/plain" scope="axis2"/>
于 2012-07-13T12:58:05.877 に答える