2011-11-11 10 views
0

Apache Axis2 1.6.1をJetty 8.0.4 Webサーバーにインストールしましたが、JSON解析が機能していないようですので、何かをインストールまたは設定する必要がある受信(サービス)側JSONを理解する。Axis2でJSON解析を有効にする

org.apache.axis2.AxisFault: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '{' (code 123) in prolog; expected '<' at [row,col {unknown-source}]: [1,1] 
:私は、私は次の例外を得続けるJSONを使用しようとすると、すべてが、SOAPリクエストで期待どおりに動作しながら、

は具体的には、私は、私が開発してきた単純なサービスのためのPOJO Deploymentシナリオを使用します

これは、私のサービスだけでなく、Axis2にバンドルされたユニットテスト(JSONIntegrationTestなど)の場合でも、メッセージ送信メソッド(sendReceive()やinvokeRobust()など)を使用した結果として一貫して発生します。

パケットトレースを使用すると、送信メッセージがJSON( "application/json"コンテンツタイプ)で正しくフォーマットされていることがわかります。したがって、受信側は明らかにメッセージを期待しているサービスに逆シリアル化できません。どうやらAxis2はJSONを受け取っていてもXMLを待っているようです。

受信(サービス)側でJSONをデシリアライズするようにAxis2に指示する方法を教えてください。

答えて

1

サーバー側でJSONメッセージビルダーを設定する必要があります。しかし、それでもAXIS2-5158のために動作しません。

+0

これは、クライアントサイドのaxis2.xmlで宣言している標準のメッセージビルダーの1つ(org.apache.axis2.json.JSONOMBuilderなど)ですか?それをサーバー側でどのように宣言しますか? – PNS

+0

正確には同じですが、サーバー側のaxis2.xmlファイルです。 –