|
この節では、JAX-RPC の Web サービスおよびクライアントを JAX-WS へ移行するためのヒントを提供します。次の表に、説明するトピックをまとめます。
| 注意 : | WebLogic の信頼性のあるメッセージング、会話形式またはバッファ付きの Web サービスなど、JAX-RPC の機能が JAX-WS でサポートされない場合があります。この場合、アプリケーションは再構築してからでないと移行することはできません。 |
WebLogic Web サービスの最終コンテキスト ルートはさまざまな方法で設定できます。『WebLogic Web サービス リファレンス』の「WebLogic Web サービスの最終コンテキスト ルートの確定方法」を参照してください。
この節で説明するように、JAX-RPC Web サービスを定義する際は、@WLXXXTransport JWS アノテーションを使用してコンテキスト ルートを指定できます。この @WLXXXTransport JWS アノテーションは、JAX-WS Web サービスには無効です。JAX-RPC Web サービスで使用する場合、他の方法の 1 つを使用するためにこのアノテーションを削除して JWS ファイルを更新する必要があります。
JAX-WS では以下の WebLogic 独自のアノテーションがサポートされています。
その他の WebLogic 独自のアノテーションは、JAX-WS への移行時に JAX-RPC アプリケーションからすべて削除する必要があります。詳細については、『WebLogic Web サービス リファレンス』の「WebLogic 固有のアノテーション」を参照してください。
JAX-RPC Web サービスで jwsc ファイルを実行すると、指定した出力ディレクトリに WSDL ファイルが生成されます。JAX-WS Web サービスの場合、WSDL ファイルはサービス エンドポイントのデプロイ時に生成されます。WSDL ファイルを出力ディレクトリに生成するには、jwsc Ant タスクの <jws> 子要素で wsdlOnly 属性を指定する必要があります。詳細については、『WebLogic Web サービス リファレンス』の「jwsc」を参照してください。
JAX-WS では Java Architecture for XML Binding (JAXB) を使用してあらゆるデータ バインディング タスクを管理します。アプリケーションで XMLBean または Tylar を使用してカスタム タイプをサポートしている場合、JAXB を使用するようにそれらを変更する必要があります。JAXB の使用に関する詳細については、「JAXB データ バインディングの使用」を参照してください。
JAX-WS では EJB 3.0 がサポートされますが、JAX-RPC では EJB 2.1 しかサポートされません。
EJB 3.0 では、EJB を実装する場合に必要な EJB リモートおよびホーム インタフェース クラスおよびデプロイメント記述子ファイルを、手動で作成するのではなく、自動的に生成することができるメタデータ アノテーションが導入されました。
EJB 3.0 Bean クラス要件および 2.x からの変更点については、『WebLogic エンタープライズ JavaBeans バージョン 3.0 プログラマーズ ガイド』の「Bean ファイルのプログラミング : 要件および 2.X からの変更点」を参照してください。
SOAPBinding.Style.RPC スタイルの使用はサポートされていますが、JAX-WS では推奨されません。このスタイルは SOAPBinding.Style.DOCUMENT へ変更するようお勧めします。
SOAP API は似ていますが、JAX-RPC SOAP ハンドラは、JAX-WS で動作するよう変更する必要があります。詳細については、『JAX-WS を使用した WebLogic Web サービスの高度な機能のプログラミング』の「SOAP メッセージ ハンドラの作成と使用」を参照してください。
JAX-RPC と JAX-WS のクライアント API は完全に異なるため、JAX-RPC クライアントを書き直す必要があります。JAX-WS クライアントの記述に関する詳細については、『JAX-WS を使用した WebLogic Web サービスの開始』の「Web サービスの呼び出し」を参照してください。
|