Web サービスをデプロイする

プロダクション モードのデプロイメントの概要

WebLogic Server の Web サービスの実行モードには、デザイン モードとプロダクション モードの 2 種類があります。  

サーバのデフォルト モードは「デザイン モード」です。デザイン モードでは、開発を何度でも繰り返すことができます。 Web サービス アプリケーションのソース ファイルは、展開ディレクトリ形式でディスク上に格納されます。 ソース ファイルへの変更は、サーバによって動的に認識され、実行中のサービスに適用されます。 Web サービスの開発者は、デザイン モードでサーバを実行する必要があります。

場合によっては、Web サービスを現在の開発中のマシン以外のマシンにデプロイする必要があります。 最も一般的な理由は、通常は開発用に使用しているものとは違う、外部からアクセスできるマシンでサービスを使用できるようにするため、というものです。 このマシンは、「プロダクション モード」でサーバを実行する必要があります。プロダクション モードは、単一ファイルのアーカイブ(エンタープライズ アプリケーション アーカイブ、または EAR)でパッケージ化されたアプリケーションをサポートします。 Workshop Web サービスは、プロダクション モードで実行されている WebLogic Server にデプロイする際に、EAR ファイルにパッケージ化する必要があります。 プロダクション モード サーバで実行されているアプリケーションを変更することはできません。 ただし、アプリケーションを更新し、プロダクション モード サーバ上で置き換えることはできます。

WebLogic Server および Workshop では、あるマシンで開発したアプリケーションを別のマシンにデプロイする作業を実行するために、コマンド ライン ツールが提供されています。 このプロセスを「プロダクション デプロイメント」と言います。 以下のコマンド ライン ツールがあります。

JwsCompile -- Web サービス アプリケーションの全コードを格納し、別のマシンへのデプロイメントに対応した EAR を生成するのに使用します。

weblogic.Deployer -- EAR をプロダクション モード サーバにデプロイするのに使用します。

Web サービス アプリケーション用 EAR を生成する方法

Web サービス アプリケーションの開発を完了し、プロダクション モード サーバへのデプロイする準備ができたとします。 JwsCompile コマンドで、そのアプリケーション用の EAR を生成します。 JwsCompile コマンドは以下の構文です。

JwsCompiler [ -p -app -url -a -x -c -ear -v ] [ <Jws File Name> ]
  -p <Project Directory>      Specify where project sources are.
  -app <Application Name>     Specify the name of the application.
  -a                          Compile all JWS files in project.
  -x <Exclude Jws>            Exclude a Jws from build all.
  -ear <Output EAR file>      Where to put the EAR result.
  <Jws File Name>             The name of the JWS file to compile.

注意 : 上記は、JwsCompile 構文のごく一部です。 jwsCompile ツールの詳細については、リファレンスの JwsCompile コマンドを参照してください。

プロジェクトのルートが C:\bea\weblogic700\samples\workshop\applications\foo で、アプリケーション用に foo.ear という EAR を作成し、それを C:/myEARS/ に格納するには、以下のコマンドを実行します。

JwsCompile –p C:\bea\weblogic700\samples\workshop\applications\foo –a –ear C:\myEARS\foo.ear

JwsCompile によって、特定のホスト名およびポートで動作するサーバ用の EAR が生成されます。 デフォルト ホスト名は JwsCompile を実行したマシン、デフォルト ポートは 7001(WebLogic Server の標準)です。 EAR を別のマシンおよびポートで実行するよう指定するには、プロジェクトの WEB-INF ディレクトリに「weblogic-jws-config.xml」というコンフィグレーション ファイルを格納します。 weblogic-jws-config.xml の値は、JwsCompile の実行時に適切なパラメータを指定することで上書きできます。 以下の例は、Web サービス HelloWorld を ProductionServer というマシンにデプロイするための weblogic-jws-config.xml ファイルです。

<config>


<protocol>http</protocol>
<hostname>ProductionServer</hostname>
<http-port>7001</http-port>
<https-port>7002</https-port>
<jws>
 <class-name>HelloWorld</class-name>
 <protocol>http</protocol>
</jws>
</config>

weblogic-jws-config.xml の構文の詳細については、リファレンスの weblogic-jws-config.xml コンフィグレーション ファイルを参照してください。

Web サービス用にプロダクション モードで WebLogic Server を開始する方法

サーバが動作しているモードは、起動時に判定されます。 デフォルトでは、サーバは「デザイン モード」で動作します。 サーバを「プロダクション モード」で実行するには、「production」パラメータを指定して startWebLogic スクリプトを呼び出します(Java システム プロパティ「weblogic.jws.ProductionMode=true」を設定しても有効です)。 また、プロダクション モードで起動する際に「nodebug」パラメータを含めることをお勧めします。たとえば、C ドライブに WebLogic Server をインストールしている場合、以下のコマンドを実行すると、プロダクション モードで WebLogic Server が起動します。

 

C:\bea\weblogic700\samples\workshop\startWebLogic.cmd production nodebug

 

WebLogic Server がプロダクション モードで動作している際に、Workshop をなるべく実行しないでください。

Web サービス アプリケーションの EAR をプロダクション モード サーバにデプロイする方法

アプリケーションをサーバにデプロイするには、そのサーバがプロダクション モードで動作している必要があります。 weblogic.Deployer コマンドで、EAR をプロダクション モード サーバにデプロイします。 または、WebLogic Server コンソールで提供されるウィザードでデプロイすることもできます。 どちらかの方法で EAR をデプロイする方法については、WebLogic Workshop Web サービスをプロダクション サーバにデプロイするにはを参照してください。  

weblogic.Deployer 構文の詳細については、WebLogic Server 7.0 マニュアルの weblogic.Deployer を参照してください。

関連トピック

WebLogic Workshop Web サービスをプロダクション サーバにデプロイするには