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

開発モードとプロダクション モード

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

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

開発のある段階で、Web サービスを開発用のサーバ以外のサーバにデプロイする必要生じることがあります。この作業は、通常、開発用に使用しているサーバは外部からアクセスできないため、外部からアクセスできるサーバでサービスが使用できるようにするために必要になります。デプロイ先のサーバは、プロダクション モードで稼動していなければなりません。Workshop Web サービスは、プロダクション モードで実行されている WebLogic Server にデプロイする際に、EAR ファイルにパッケージ化する必要があります。プロダクション モード サーバで実行されているアプリケーションを変更することはできません。しかし、アプリケーションを(開発用サーバで)アップデートして、プロダクション モードのサーバに再デプロイすることは可能です。

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

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

WebLogic Workshop の Web サービスをプロダクション モードのサーバにデプロイする場合、WebLogic Workshop プロジェクトの全部または一部をデプロイすることになります。デプロイされたプロジェクトには、1 つまたは複数の Web サービスが含まれます。A WebLogic Workshop プロジェクトは、Web アプリケーションとしてプロダクション サーバにデプロイされます。

WebLogic Workshop プロジェクトをプロダクション モードのサーバにデプロイするには、次の手順に従ってください。

Workshop プロジェクトから EAR ファイルを生成する

Workshop プロジェクトの開発を完了し、プロダクション モード の サーバへのデプロイする準備ができたとします。最初のステップでは、JwsCompile コマンドを使ってプロジェクトの EAR ファイルを生成します。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 は、Web サービスを特定のホスト名とポートで実行するようにコンフィグレーションします。デフォルト ホスト名は JwsCompile を実行したマシン、デフォルト ポートは 7001(WebLogic Server のデフォルト)です。デプロイされた Web サービスがこれ以外のホストおよびポートで実行されるように指定するには、次のいずれかを行います。

weblogic-jws-config.xml の値は、JwsCompile の実行時に指定された -hostname および -http-port パラメータによって上書きされます。以下の例は、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>

デフォルトでは、JwsCompile はプロジェクト内のすべての Web サービスを EAR ファイルにパッケージ化します。プロジェクト内の一部の Web サービスのみをデプロイしたい場合は、JwsCompile がプロジェクトの一部のみをコンパイルするように指定します。たとえば、プロジェクトに WebService1 と WebService2 の 2 つの Web サービスが含まれている場合に、WebService1 のみをデプロイしたいときには、JwsCompile が WebService1 のみを EAR ファイルにコンパイルするように指定します。JwsCompile が WebService1 のみをコンパイルするように指定するには、以下のように JwsCompile を実行するときに WebService1 を明示的に指定します。

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

生成される EAR ファイルには WebService1 しか含まれないため、WebService2 はデプロイされません。

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

WebLogic Server をプロダクション モードで起動する

サーバが動作モードは、起動時に決定されます。デフォルトでは、サーバは開発 モードで動作します。サーバをプロダクション モードで実行するには、production パラメータを指定して startWebLogic スクリプトを呼び出します。また、プロダクション モードで起動する際に nodebug パラメータを含めることをお勧めします。たとえば、C: ドライブに WebLogic Server をインストールしている場合、以下のコマンドを実行すると、プロダクション モードで WebLogic Server が起動します。

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

注意 : WebLogic Server がプロダクション モードで動作している間は、WebLogic Workshop の実行は避けてください。

プロダクション サーバに EAR ファイルをデプロイする

アプリケーションをサーバにデプロイするには、そのサーバがプロダクション モードで動作している必要があります。コマンドラインツール weblogic.Deployer で、EAR をプロダクション モード サーバにデプロイします。たとえば、ローカル マシンの C:/myEARs/ にある foo.ear という名前の EAR ファイルをデプロイするには、次のコマンドを実行します。

C:\>java weblogic.Deployer -password installadministrator -source C:\myEARS\foo.ear -targets cgServer -name foo -activate

weblogic.Deployer を実行するには、classpath に weblogic.jar が含まれていることが必要です。

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

または、WebLogic Server コンソールでデプロイすることもできます。どちらかの方法で EAR をデプロイする方法については、WebLogic Workshop Web サービスをプロダクション サーバにデプロイするにはを参照してください。

関連トピック

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