2007-10-02

Apache CXFと Flexの mx:WebService

Flexの WebServiceコンポーネントを使って CXFServletで公開されているサービスを呼び出そうとするとき、サービス側が rpc/encodedでないとオペレーションの引数に nullを渡したときにサーバ側のパーサ(StAX)がエラーになってしまうようだ。
サーバ側でXMLパーサがエラーになるということは Flex側の問題だろうか?

JAX-WSでは、Webサービスのデフォルト形式が document/literalになっている。これを rpc/encodedに変更するには

@SOAPBinding(style=SOAPBinding.Style.RPC,
use=SOAPBinding.Use.ENCODED,
parameterStyle=SOAPBinding.ParameterStyle.WRAPPED)

のようなアノテーションをインターフェイスにつけてやる。

0 件のコメント:

コメントを投稿

<< ホーム