ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Serverへのアプリケーションのデプロイ
11g リリース1(10.3.5)
B60988-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストヘ移動
製品
目次へ移動
目次

前
 
次
 

7 開発ドメインへのアプリケーションの自動デプロイ

自動デプロイメントは評価またはテスト用に、スタンドアロン・サーバー(管理サーバー)に対しアプリケーションを迅速にデプロイするための手法で、評価あるいはテスト用です。この手段は単一サーバーの開発環境でのみ使用することをお薦めします。


注意:

アプリケーションを開発するとき、Oracleは自動デプロイメントでなく、WebLogic Server分割開発ディレクトリおよびwldeploy antタスクを使用するようお薦めします。『Oracle WebLogic Serverアプリケーションの開発』の分割開発ディレクトリの作成に関する項を参照してください。

自動デプロイメントが有効な場合は、アプリケーションが管理サーバーの\autodeployディレクトリにコピーされると、その管理サーバーは新しいアプリケーションの存在を検出し、それを自動的にデプロイします(管理サーバーが動作している場合)。アプリケーションを\autodeployディレクトリにコピーしたときにWebLogic Serverが稼働していない場合、そのアプリケーションはWebLogic Serverの管理サーバーが次に起動したときにデプロイされます。自動デプロイメントは管理サーバーに対してのみデプロイします。


注意:

Windowsのファイル・ロックの制限により、アプリケーションが展開された場合、アプリケーション内のすべてのモジュールも展開されます。つまり、展開するアプリケーションまたはモジュールにJARファイルが含まれる場合、自動デプロイメントは使用できません。

自動デプロイメントは、開発環境において単一ターゲット・サーバーで使用することを想定されています。管理コンソールなど、他のツールを使用して自動デプロイ済みの展開されたアプリケーションにターゲットを追加した場合、アプリケーションを再デプロイしても新しいターゲット・サーバーに変更は伝わりません。


次の項では、開発環境で自動デプロイメントを使用する方法について説明します。

自動デプロイメントの有効化と無効化

WebLogic Serverドメインは、開発環境と本番環境の2つの異なるモードで実行できます。ただし、自動デプロイメント機能は開発モードでのみ使用できます。

開発モードでは、WebLogic Serverインスタンスはdomain_name/autodeployディレクトリ(domain_nameはWebLogic Serverドメインの名前)にあるアプリケーションを自動的にデプロイおよび更新できます。本番モードでは自動デプロイメント機能が無効になり、本番モードに切り替えた後でautodeployディレクトリに置いたアプリケーションはデプロイされません。開発モードから本番モードに切り替えた場合、以前にautodeployディレクトリからデプロイされたアプリケーションはデプロイされたままになります。本番モードに切り替えた後でそのようなアプリケーションをアンデプロイまたは再デプロイする場合は、手動でアンデプロイまたは再デプロイする必要があります(たとえば、付録A「weblogic.Deployerコマンド・ライン・リファレンス」で説明するように、weblogic.Deployerコマンドと-undeployまたは-redeployオプションを使用します)。

デフォルトの場合、WebLogic Serverドメインは開発モードで動作します。ドメインのモードを指定するには、「構成ウィザードによるドメインの作成」を参照してください。

アーカイブされたアプリケーションの自動デプロイ、再デプロイ、およびアンデプロイ

アーカイブされたアプリケーションを自動デプロイするには、そのアーカイブ・ファイルを/autodeployディレクトリにコピーします。WebLogic Serverはアプリケーションのデプロイメント・モードを自動的にstageモードに設定します。

自動デプロイされたデプロイメント・ユニットは、サーバーの稼働時に動的に再デプロイできます。動的に再デプロイするには、アーカイブ・ファイルの新バージョンを/autodeployディレクトリ内の既存ファイルに上書きコピーします。

自動デプロイ済みのアーカイブされたデプロイメント・ユニットをアンデプロイするには、/autodeployディレクトリからアプリケーションを削除します。WebLogic Serverは、アプリケーションを停止して構成から削除します。


注意:

サーバーがアクティブでないときに/autodeployディレクトリからアプリケーションを削除すると、サーバーが再びアクティブな状態になった場合でも、WebLogic Serverはアプリケーションが削除されたことを検出しません。ドメイン・ツリーの同期を保つために、サーバーがアクティブな状態の場合にのみ/autodeployディレクトリからアプリケーションを削除することをお薦めします。

展開アーカイブの自動デプロイ、再デプロイ、およびアンデプロイ

展開されたアーカイブ形式でアプリケーションを自動デプロイするには、展開されたアーカイブ・ディレクトリ全体を/autodeployディレクトリにコピーします。WebLogic Serverは、nostageデプロイメント・モードを使用して、展開されたアーカイブ・アプリケーションを自動的にデプロイします。


注意:

Windowsのファイル・ロックの制限により、展開されたEARディレクトリをデプロイするとき、そのディレクトリにアーカイブされたモジュール(JARファイル)が含まれている場合、JARファイルはデプロイメント中はロックされて、削除できなくなります。したがって、自動デプロイするアプリケーションが展開されている場合は、そこに含まれているモジュールもすべて展開しておく必要があります。

展開されたアーカイブ・ディレクトリ全体の内容が/autodeployディレクトリ内にない場合に、アプリケーションを展開されたアーカイブ形式でデプロイしようとすると、自動デプロイメントは失敗します。展開されたアーカイブ形式の大きなアプリケーションを/autodeployディレクトリへコピーするのは時間がかかるため、サーバーが非アクティブ状態にあるときに、展開されたアーカイブ・ディレクトリを/autodeployディレクトリにコピーすることをお薦めします。展開されたアーカイブ・ディレクトリ全体が/autodeployディレクトリにコピーされた後で、サーバーをアクティブ状態に戻すと、アプリケーションは自動デプロイされます。または、大きなアプリケーションはweblogic.Deployerを使用してデプロイすることをお薦めします。付録A「weblogic.Deployerコマンド・ライン・リファレンス」を参照してください。


アプリケーションが展開されたアーカイブ形式で自動デプロイされている場合、管理サーバーは、展開されたアプリケーションのディレクトリ内でREDEPLOYというファイルを定期的に検索します。このファイルのタイムスタンプが変更されている場合、管理サーバーは展開ディレクトリを再デプロイします。

展開されたアプリケーション・ディレクトリ内のファイルを再デプロイするには:

  1. 展開されたアプリケーション・ディレクトリを初めてデプロイする場合、REDEPLOYという名前の空のファイルを作成し、そのファイルを、デプロイするアプリケーションのタイプに応じて、WEB-INFまたはMETA-INFディレクトリに配置します。

    展開したエンタープライズ・アプリケーションには、最上位にMETA-INFディレクトリがあり、このディレクトリにapplication.xmlファイルがあります。

    展開されたWebアプリケーションには、最上位にWEB-INFディレクトリがあり、このディレクトリにweb.xmlファイルが格納されています。

    展開されたEJBアプリケーションには、最上位にMETA-INFディレクトリがあり、このディレクトリにejb-jar.xmlファイルが格納されています。

    展開されたコネクタには、最上位にMETA-INFディレクトリがあり、このディレクトリにra.xmlファイルが格納されています。


    注意:

    REDEPLOYファイルは、デプロイしたアプリケーション全体またはスタンドアロン・モジュールに対してのみ機能します。展開したエンタープライズ・アプリケーションをデプロイした場合、REDEPLOYファイルは、エンタープライズ・アプリケーションの個別モジュール(Webアプリケーションなど)ではなく、アプリケーション全体の再デプロイメントを制御します。Webアプリケーション自体を展開したアーカイブ・ディレクトリとしてデプロイする場合、REDEPLOYファイルはWebアプリケーション全体の再デプロイメントを制御します。

  2. 展開されたアプリケーションを再デプロイするには、更新されたファイルをそのディレクトリ内の既存のファイルに上書きコピーします。

  3. 新しいファイルをコピーしたら、展開ディレクトリ内のREDEPLOYファイルのタイムスタンプを更新します。

管理サーバーは、タイムスタンプの変更を検出すると、展開ディレクトリのコンテンツを再デプロイします。


注意:

自動デプロイしたアプリケーションの再デプロイメントを開始する場合は常に、REDEPLOYファイルをtouchする(タイムスタンプを変更する)必要があります。サーバーが停止状態のときにアプリケーションを変更する場合でも、REDEPLOYファイルをtouchし、次回のサーバー起動時に変更が確実に適用されるようにする必要があります。

展開形式で自動デプロイしたアプリケーションをアンデプロイするには、weblogic.Deployer -undeployコマンドを使用するか、または管理コンソールを使用して、デプロイメントの構成を削除します。次に、/autodeployディレクトリからアプリケーション・ファイルを削除します。


注意:

サーバーがアクティブでないときに/autodeployディレクトリからアプリケーション・ファイルを削除すると、サーバーが再びアクティブな状態になった場合でも、WebLogic Serverはアプリケーション・ファイルが削除されたことを検出しません。ドメイン・ツリーの同期を保つために、サーバーがアクティブな状態の場合にのみ/autodeployディレクトリからアプリケーション・ファイルを削除することをお薦めします。

自動デプロイメントの制限事項

自動デプロイしたアプリケーションは、開発環境では大変便利ですが、いくつかの制限事項があります。