4 WebLogic Webサービスのアップグレード
この章の内容は次のとおりです。
ノート:
関連するWebサービス・ランタイムはこのリリースでもサポートされるため、10.3.xのWebLogic Webサービス(JAX-WSまたはJAX-RPC)は変更しなくてもバージョン12.2.xのWebLogic Serverで引き続き実行できますが、対象のWebサービス・ランタイムは非推奨になっており、今後のリリースの製品からは削除される予定です。このため、この章の説明に従って、10.3.xのWebサービスを12.2.xにアップグレードすることをお薦めします。
JAX-RPC APIは、12.2.xから非推奨となり、今後のリリースで削除される予定です。JAX-RPCスタックへのアップグレードはお薦めしません。
10.3.x RESTful Webサービス(JAX-RS)の12.2.1.4.0へのアップグレード
web.xml
およびweblogic.xml
デプロイメント・ディスクリプタをそれぞれ変更する必要があります。
12.2.1.4.0では、WebLogic ServerはデフォルトでJersey 2.22 (JAX-RS 2.0 RI)をサポートするため、共有ライブラリとしてのWebLogic Serverへの登録は必要ありません。
Jersey 2.22.x (JAX-RS 2.0 RI)を使用するには、次のように、10.3.x RESTful Webサービス・アプリケーションを変更する必要があります。
10.xのWebLogic Webサービス(JAX-WS)の12.2.xへのアップグレード
10.x WebLogic Webサービスを12.2.xへアップグレードするために必要なステップはありません。JAX-WSのWebサービスは、変更や再コンパイルを行わずにWebLogic Server 12.2.xへ再デプロイすることができます。
8.1のWebLogic WebサービスのWebLogic JAX-WSスタックへのアップグレード
ノート:
12.2.1.4.0にアップグレードする前に、現在のWebLogic Serverリリースで8.1 WebサービスからJAX-WSへアップグレードします。12.2.1.4.0にアップグレードすると、8.1 Webサービスは機能しなくなります。
JAX-WSスタックにアップグレードすると、WebLogic Serverの最新のテクノロジと標準のサポートを利用できます。このパスには手作業によるアップグレード・プロセスが必要であり、作業レベルは既存の8.1 Webサービス・アプリケーションの性質によります。たとえば、アプリケーションでXMLBeansをほとんど使用しない場合、アップグレード・プロセスは比較的容易なものになります。XMLBeansの依存性が高い8.1 Webサービス・アプリケーションの場合、XMLBeansクラスのかわりにJAXBクラスを使用するにはサービス実装のビジネス・ロジックを変更する必要があります。JAX-WSは、RPCエンコード・スタイルをサポートしていません。RPCエンコード・スタイルの8.1 Web Serviceアプリケーションは、より相互運用性の高いリテラル・スタイルのサービス規定に対応することが必要になります。
WebLogic JAX-WSのランタイムは、JAX-WS 2.2仕様とWeb Services for Java EE v1.3 (JSR 109)仕様に基づいています。これらはWebサービスの定義にJava Web Service (JWS)ソース・ファイルで使用されるアノテーションを定義します。Antタスクが次に使用されてJWSがJavaクラスにコンパイルされ、すべての関連するアーティファクトが生成されます。Java Webサービス(JWS)は、JAX-WS Webサービスの中核部分です。
8.1 Webサービスのアップグレードには次の高レベル・タスクが含まれます。
-
WebサービスEJBの2.xから3.xへのアップグレード。
JAX-WSはEJB 3.0および3.xをサポートします。EJB 2.xはサポートしません。
-
8.1 Webサービス・クラスをJAX-WS JWSファイルとして書き換えて、8.x固有の機能を類似したJAX-WS機能にマッピングします。
8.1 Webサービス機能とJAX-WS 12.1.x機能の間に1対1で対応するものはありません。
-
WebサービスをビルドするAntビルド・スクリプトを、8.1のservicegenタスクではなく12.1.
x
のWebLogic WebサービスAntタスクjwsc
を呼び出すように更新します。 -
JAX-WS
clientgen
Antタスクを使用して新規のJAX-WSクライアントを生成します。
JAX-WSのアップグレードに関する考慮事項
JAX-WSにアップグレードする前に、次の点を考慮してください。
-
JAX-WS仕様はdocument-literalおよびrpc-literal形式をサポートしていますが、rpc-encodedはサポートしていません。
-
JAX-WS仕様は、SOAP配列をサポートしていません。
WebLogic JAX-RPC WebサービスのWebLogic JAX-WSスタックへのアップグレード
WebLogic JAX-WSのランタイムは、JAX-WS (The Java API for XML-Based Web Services) 2.2仕様とWeb Services for Java EE v1.3 (JSR 109)仕様に基づいています。JAX-WS 2.0から、JavaプラットフォームおよびWebLogic ServerにおいてJAX-WSテクノロジがJAX-RPCに取って替わりました。WebLogicアプリケーションのJAX-RPC Webサービスは、JAX-WSにアップグレードする必要があります。
ノート:
JAX-RPC APIは、12.2.xから非推奨となり、今後のリリースで削除される予定です。JAX-RPCスタックへのアップグレードはお薦めしません。この項では、WebLogic JAX-WSスタックを使用するようにWebLogic JAX-RPC Webサービスをアップグレードする方法を説明します。
WebLogic Server JAX-RPC Webサービスのアップグレードには主に次のタスクが含まれます。
-
WebサービスEJBの2.xから3.xへのアップグレード。
JAX-WSはEJB 3.0および3.xをサポートします。EJB 2.xはサポートしません。
-
JWSをアップグレードし、JAX-RPC固有の機能を類似のJAX-WS機能にマップします。
WebLogic JAX-RPC Webサービス機能とJAX-WS 12.x機能の間に1対1で対応するものはありません。
-
WebサービスをビルドするAntビルド・スクリプトを更新して、
jws
、wsdlc
およびclientgen
タスクのtype
属性の値を"JAXWS"
(たとえば、type="JAXWS"
)に変更します。 -
JAX-WS
clientgen
Antタスクを使用して新規のJAX-WSクライアントを生成します。
JAX-WSのアップグレードに関する考慮事項
JAX-WSにアップグレードする際、次の点を考慮してください。
-
JAX-WS仕様はdocument-literalおよびrpc-literal形式をサポートしていますが、rpc-encodedはサポートしていません。
-
SOAP配列はJAX-WSではサポートされません。