2

私はコードファーストの実装を使用するAXIS2/JAX-WS Webサービスを持っています(そうです、それは悪いことです)。Webサービスは、.NETベースのクライアントによって使用されています。

Axis1を使用する前、およびカスタムオブジェクトがクライアントとサーバー間で渡されると、クライアントとサーバーのコードは独自のシリアル化と逆シリアル化を実行する必要がありました。

Axis2に変換するときに、カスタムシリアル化を削除し、すべてのオブジェクトを通常のBean形式に変換しました。

ここで問題が発生します。オブジェクトが送信される元の方法はポリモーフィック呼び出しによるものでしたが、Axis2/JAX-WSおよび.NETがシリアル化を処理する方法に問題があるようです。.NETは要素を宣言するときにxsi:type属性を使用し、Java側は要素の型を変更すると思います。.NETクライアントとJavaベースのWebサービスを使用してWebサービスに多態的な呼び出しを行う方法はありますか?

ありがとう。

4

1 に答える 1

2

問題を見つけました。Javaクラスでは、名前空間を@XmlTypeアノテーションで定義する必要がありました。これで、オブジェクトは正しくセル化および逆シリアル化されます。

于 2009-07-15T17:03:35.273 に答える