2016-07-11 5 views
0

実際に私はプロキシでペイロードファクトリを使用しており、残りの部分とjsonコンテンツを持つプロキシを呼び出しています。ここで私の統合フローは、私はプロキシを呼び出し、プロキシはjmsメッセージストアにリクエスト(jsonコンテンツ付き)を送信し、メッセージストアからメッセージを消費し、定義済みのエンドポイントに送信するようにメッセージプロセッサを定義しました。 API)。しかし問題は数字の文字列が整数要素として自動的に変換されることです: "orderId":10000(私はそれを文字列 "orderId": "10000"にしたい)が、私のエンドポイントメッセージブローカーを使用して)正常に動作します。この問題を解決するのを助けてください。wso2 esb json to json変換二重引用符がありません

答えて

1

を追加Formatersセクションの下

<messageFormatter contentType="application/json" 
          class="org.apache.synapse.commons.json.JsonStreamFormatter"/> 

を追加しますが、この問題にmy question with more detailsを指し、これはWSO2のESB 4.9.0 のバグであるように見えますwso2 jira

0

問題がある場合は、JSONメッセージフォーマッタを変更する必要があります。 そのためには以下の手順に従ってください。

  • 変更org.apache.axis2.json使用かわりJsonStreamFormatterのJSONメッセージフォーマッタを変更する必要があり、その後

  • /repository/conf/axis2/axis2.xml [ESBホーム]作業ディレクトリ.JSONMessageFormatter。

<!--messageFormatter contentType="application/json"        class="org.apache.synapse.commons.json.JsonStreamFormatter"/--> 
    <messageFormatter contentType="application/json" 
           class="org.apache.axis2.json.JSONStreamFormatter"/> 
0

あなたは、 "アプリケーション/ JSON" のために既存のビルダーとフォーマッタを削除し、以下を追加し

org.apache.synapse.commons.json.JsonStreamBuilder 
org.apache.synapse.commons.json.JsonStreamFormatter 

axis2.xmlを、以下のビルダーとフォーマッタを使用することができます。

ビルダーセクションの下の詳細については

<messageBuilder contentType="application/json" 
          class="org.apache.synapse.commons.json.JsonStreamBuilder"/> 
+0

私は前にこれをしましたが、何も起こりません、あなたは私の新しい[質問]を見ていただけますか(http://stackoverflow.com/question) s/38321898/wso2-esb-json-missing-quotes-and-brackets)、私はずっと多くの詳細について私の問題を説明してきました。ありがとう –

関連する問題