ナビゲーションをスキップ

WebLogic Web サービス プログラマーズ ガイド

  前 次 前/次ボタンと目次ボタンとの区切り線 目次  

WebLogic Web サービスのアップグレード

この章では、WebLogic Web サービスを 8.1 へアップグレードする方法について説明します。

 


WebLogic Web サービスのアップグレードの概要

バージョン 6.1、7.0、および 8.1 の WebLogic Server 間の Web サービス実行時システムの変更に伴い、バージョン 6.1 および 7.0 で作成した Web サービスをバージョン 8.1 で実行するにはアップグレードが必要になります。

 


7.0 WebLogic Web サービスから 8.1 へのアップグレード

7.0 WebLogic Web サービスをバージョン 8.1 にアップグレードするには、次の手順に従います。

  1. 8.1 環境を設定します。
  2. 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 はドメインの名前です。

  3. EJB JAR ファイルや servicegen Ant タスクの呼び出しが記述されている build.xml ファイルなど、7.0 Web サービスの各コンポーネントが保存されているステージング ディレクトリに移動します。
  4. ステージング ディレクトリで ant と入力して、build.xml ファイルで指定された servicegen Ant タスクを実行します。
  5. prompt> ant

    Ant タスクによってステージング ディレクトリに 8.1 Web サービス EAR ファイルが生成されるので、WebLogic Server へのデプロイが可能になります。

 


6.1 WebLogic Web サービスから 8.1 へのアップグレード

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 にアップグレードするには、次の手順に従います。

  1. wsgen Ant タスクで 6.1 Web サービスのアセンブルに使用した build.xml Ant ビルド ファイルを、servicegen Ant タスクを呼び出す 8.1 バージョンに変換します。
  2. 詳細については、「6.1 build.xml ファイルから 8.1 へ変換する」を参照してください。

  3. 6.1 Web サービス EAR ファイルを unJAR し、ステートレス セッション EJB (6.1 RPC スタイル Web サービスの場合) またはメッセージ駆動型 Bean (6.1 メッセージスタイル Web サービスの場合) を含む EJB JAR ファイルを抽出します。サポート クラス ファイルがあればそれも抽出します。
  4. 6.1 Web サービスが RPC スタイルの場合、servicegen Ant タスクの使い方については「servicegen Ant タスクを使用した WebLogic Web サービスのアセンブル」を参照してください。6.1 Web サービスがメッセージ スタイルの場合は、「JMS で実装された WebLogic Web サービスの servicegen によるアセンブル」を参照してください。
  5. クライアント アプリケーションで、Web サービス自体または Web サービスの WSDL へのアクセスに使用する URL を、6.1 で使用されていた URL から 8.1 の URL に更新します。詳細については、「Web サービスへのアクセスに使用される URL を更新する」を参照してください。

6.1 build.xml ファイルから 8.1 へ変換する

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 要素および属性との対応を示します。

表 21-1 6.1 から 8.1 への wsgen Ant タスクのマッピング

6.1 wsgen 要素

属性

相当する 8.1 servicegen 要素

属性

wsgen

basepath

相当する属性なし

相当する属性なし

destpath

servicegen

destEar

context

servicegen

contextURI

protocol

servicegen.service

protocol

host

相当する属性なし

相当する属性なし

port

相当する属性なし

相当する属性なし

webapp

servicegen

warName

classpath

servicegen

classpath

rpcservices

module

相当する属性なし

相当する属性なし

path

servicegen.service

ejbJar

rpcservice

bean

servicegen.service

includeEJBS、excludeEJBs

uri

servicegen.service

serviceURI

messageservices

なし

相当する属性なし

相当する属性なし

messageservice

name

相当する属性なし

相当する属性なし

destination

servicegen.service

JMSDestination

destinationtype

servicegen.service

JMSDestinationType

action

servicegen.service

JMSAction

connectionfactory

servicegen.service

JMSConnectionFactory

uri

servicegen.service

serviceURI

clientjar

path

servicegen.service.client

clientJarName

Web サービスへのアクセスに使用される URL を更新する

クライアント アプリケーションが 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

8.1 のデフォルトの URL は次のとおりです。

[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

 

フッタのナビゲーションのスキップ  ページの先頭 前 次