WebLogic Web サービス プログラマーズ ガイド
|
|
この章では、WebLogic Web サービスを 8.1 へアップグレードする方法について説明します。
バージョン 6.1、7.0、および 8.1 の WebLogic Server 間の Web サービス実行時システムの変更に伴い、バージョン 6.1 および 7.0 で作成した Web サービスをバージョン 8.1 で実行するにはアップグレードが必要になります。
7.0 WebLogic Web サービスをバージョン 8.1 にアップグレードするには、次の手順に従います。
Windows NT では、ドメイン ディレクトリにある setEnv.cmd コマンドを実行します。WebLogic Server ドメインのデフォルトの位置は、BEA_HOME\user_projects\domains\domainName です。BEA_HOME は BEA Products の最上位のインストール ディレクトリで、domainName はドメインの名前です。
UNIX では、ドメイン ディレクトリにある setEnv.sh コマンドを実行します。WebLogic Server ドメインのデフォルトの位置は、BEA_HOME/user_projects/domains/domainName です。BEA_HOME は BEA Products の最上位のインストール ディレクトリで、domainName はドメインの名前です。
servicegen Ant タスクの呼び出しが記述されている build.xml ファイルなど、7.0 Web サービスの各コンポーネントが保存されているステージング ディレクトリに移動します。prompt>ant
6.1 Web サービスを手動でアップグレードします。これには、6.1 Web サービスの作成に使用した build.xml ファイルを書き換えて、wsgen Ant タスクではなく servicegen Ant タスクを呼び出すようにします。6.1 Web サービスを 8.1 WebLogic Server インスタンス上にデプロイすることはできません。
警告 : wsgen Ant タスクは、WebLogic Server のバージョン 7.0 では非推奨でしたが、バージョン 8.1 ではサポートされていません。
WebLogic Server のバージョン 6.1 に組み込まれていた WebLogic Web サービス クライアント API は削除され、この API を使用して 8.1 の Web サービスを起動することはできません。バージョン 8.1 には、Java API for XML based RPC (JAX-RPC) に基づいた新しいクライアント API が含まれています。 6.1 Web サービス クライアント API を使用しているクライアント アプリケーションは、JAX-RPC API を使用するよう書き換える必要があります。詳細については、「クライアント アプリケーションおよび WebLogic Server からの Web サービスの呼び出し」を参照してください。
6.1 WebLogic Web サービスを 8.1 にアップグレードするには、次の手順に従います。
wsgen Ant タスクで 6.1 Web サービスのアセンブルに使用した build.xml Ant ビルド ファイルを、servicegen Ant タスクを呼び出す 8.1 バージョンに変換します。 詳細については、「6.1 build.xml ファイルから 8.1 へ変換する」を参照してください。
servicegen Ant タスクの使い方については「servicegen Ant タスクを使用した WebLogic Web サービスのアセンブル」を参照してください。6.1 Web サービスがメッセージ スタイルの場合は、「JMS で実装された WebLogic Web サービスの servicegen によるアセンブル」を参照してください。Web サービスのアセンブルに使用される build.xml ファイルの 6.1 と 8.1 の主な違いは Ant タスクです。6.1 では、タスクは wsgen と呼ばれていましたが、8.1 では servicegen と呼ばれます。 servicegen Ant タスクは、wsgen と同じ要素と属性を多数使用します。ただし、一部は非適用になっています。servicegen Ant タスクにも、追加のコンフィグレーション オプションが含まれています。この節の最後にある表では、この 2 つの Ant タスクの要素間と属性間のマッピングについて説明します。
次の build.xml は、6.1 RPC スタイル Web サービスの例からの抜粋です。
<project name="myProject" default="wsgen">
<target name="wsgen">
<wsgen destpath="weather.ear"
context="/weather">
<rpcservices path="weather.jar">
<rpcservice bean="statelessSession"
uri="/weatheruri"/>
</rpcservices>
</wsgen>
</target>
</project>
次の例では、これに相当する 8.1 build.xml ファイルを示します。
<project name="myProject" default="servicegen">
<target name="servicegen">
<servicegen
destEar="weather.ear"
contextURI="weather" >
<service
ejbJar="weather.jar"
serviceURI="/weatheruri"
includeEJBs="statelessSession" >
</service>
</servicegen>
</target>
</project>
WebLogic Web サービス Ant タスクの詳細については、「Web サービス Ant タスクとコマンドライン ユーティリティ」を参照してください。
次の表では、6.1 wsgen 要素および属性と、それに相当する 8.1 servicegen 要素および属性との対応を示します。
クライアント アプリケーションが WebLogic Web サービスへのアクセスに使用するデフォルトの URL とその WSDL は、バージョン 6.1 から 8.1 の WebLogic Server になったときに変更されました。
バージョン 6.1 のデフォルトの URL は次のとおりです。
[protocol]://[host]:[port]/[context]/[WSname]/[WSname].wsdl
「WebLogic Web サービスを呼び出して WSDL を取得する URL」を参照してください。
たとえば、「6.1 build.xml ファイルから 8.1 へ変換する」に示した build.xml ファイルで構築した 6.1 Web サービスを呼び出す URL は次のとおりです。
http://host:port/weather/statelessSession.WeatherHome/statelessSession.WeatherHome.wsdl
[protocol]://[host]:[port]/[contextURI]/[serviceURI]?WSDL
「WebLogic Web サービスのホーム ページおよび WSDL の URL」を参照してください。
たとえば、「6.1 build.xml ファイルから 8.1 へ変換する」で示した 6.1 build.xml ファイルを変換して wsgen を実行した後で、相当する 8.1 Web サービスを呼び出す URL は次のとおりです。
http://host:port/weather/weatheruri?WSDL
|
|
|