プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Application Development FrameworkによるFusion Webアプリケーションの開発
12c (12.1.3)
E59441-03
  目次へ移動
目次

前
 
 

H GlassFishへのADFアプリケーションのデプロイ

この付録では、Oracle ADFアプリケーションをGlassFishアプリケーション・サーバーにデプロイする方法について説明します。具体的には、デプロイメント・ファイルの作成方法、デプロイメント・ディスクリプタの作成方法、およびアプリケーションのデプロイ方法について説明します。

この章の内容は次のとおりです。

H.1 GlassFish ServerへのADFアプリケーションのデプロイについて

デプロイは、アプリケーション・ファイルをアーカイブ・ファイルとしてパッケージ化し、ターゲットのGlassFishアプリケーション・サーバーに転送するプロセスです。JDeveloperを使用すると、ADFアプリケーションをGlassFish Serverに直接デプロイするか、またはデプロイ・ターゲットとしてアーカイブ・ファイルに間接的にデプロイし、このアーカイブ・ファイルを対象のGlassFish Serverにインストールできます。アプリケーション開発の際には、JDeveloperを使用して、統合WebLogic Serverでアプリケーションを実行することもできます。

JDeveloperを使用して、次の作業を実行できます。

  • 統合WebLogic Serverでのアプリケーションの実行

    統合WebLogic Serverを使用してアプリケーションを実行およびデバッグし、スタンドアロンGlassFish Serverにデプロイできます。

  • スタンドアロンGlassFish Serverへの直接デプロイ

    アプリケーションをスタンドアロンGlassFish Serverに直接デプロイするには、サーバーへの接続を作成し、そのサーバーの名前をデプロイメント・ターゲットとして選択します。

  • アーカイブ・ファイルへのデプロイ

    デプロイメント・ターゲットとしてEARファイルを選択することによって、間接的にアプリケーションをデプロイすることができます。アーカイブ・ファイルは、ターゲットのGlassFish Serverに後でインストールできます。

H.1.1 統合WebLogic Serverを使用したアプリケーションの開発

JDeveloperでアプリケーションを開発していて、統合WebLogic Serverでアプリケーションを実行する場合、Oracle WebLogic Serverに直接、またはアーカイブ・ファイルにデプロイするために必要なタスクを実行する必要はありません。JDeveloperには統合WebLogic Serverへのデフォルトの接続があるため、デプロイメント・プロファイルやデプロイメント・ディスクリプタは不要です。統合WebLogic Serverには、ADFアプリケーションの実行に必要なADFライブラリを含む事前構成済ドメイン、および-Djps.app.credential.overwrite.allowed=trueの設定が用意されています。JDeveloperのメイン・メニューから「実行」を選択すれば、アプリケーションを実行できます。

第42章「ADFコンポーネントのテストとデバッグ」で説明した機能を使用して、アプリケーションをデバッグできます。

H.1.2 スタンドアロンGlassFish Serverにデプロイするためのアプリケーションの開発

通常、スタンドアロン・サーバーにデプロイするためには、統合WebLogic Serverでアプリケーションを実行してテストと開発を行います。その後、アプリケーションをスタンドアロンGlassFish Serverにデプロイして、アプリケーションのテストをさらに実施できます。

一般にJDeveloperでは、次の作業を行って、デプロイに向けてアプリケーションまたはプロジェクトを準備します。

  • ターゲットGlassFish Serverへの接続の作成

  • デプロイメント・プロファイルを作成(必要な場合)

  • GlassFishに固有のデプロイメント・ディスクリプタの作成

  • GlassFish Serverとの互換性を確保するためのapplication.xmlおよびweb.xmlの更新(必要な場合)

GlassFish Serverをあらかじめインストールしておく必要があります。GlassFishの入手方法およびインストール方法は、http://glassfish.java.net/downloads/3.1.2-final.htmlを参照してください。

また、ADFアプリケーションのデプロイに向けてGlassFish Server準備する必要もあります。詳細は、『Oracle ADFアプリケーションの管理』の付録「GlassFish Serverの構成」を参照してください。

  • GlassFish Serverのインストール先へのADFランタイムのインストール:

  • JVMキャッシュ・サイズおよびsimpleオプションの設定

  • GlassFish Server上でのセキュアな管理の有効化。これにより、リモート・ログインおよびリモート接続が可能になるため、GlassFish以外のマシン上でJDeveloperを実行できるようになります。

  • データ・ソースへの接続を必要とするアプリケーションのためのグローバルなJDBCデータ・ソースの作成

アプリケーションとGlassFish Serverの準備が完了したら、次の作業を行うことができます。

  • JDeveloperを使用して次の操作を行います。

    • デプロイメント・プロファイルとアプリケーション・サーバー接続を使用して、GlassFish Serverに直接デプロイします。

    • デプロイメント・プロファイルを使用して、EARファイルにデプロイします。ADFアプリケーションの場合、WARファイルはEARファイルの一部としてのみデプロイできます。

  • GlassFish Serverの管理ツールを使用して、JDeveloperで作成したEARファイルをデプロイします。

H.2 統合WebLogic ServerでのADFアプリケーションの実行

JDeveloperは、統合WebLogic Serverとともにインストールされますが、この統合WebLogic Serverをアプリケーションのテストと開発に使用できます。開発目的では、統合WebLogic Serverで十分なことがほとんどです。アプリケーションをテストする準備が整ったら、実行ターゲットを選び、メイン・メニューから「実行」コマンドを選択します。


注意:

アプリケーションを統合WebLogic Serverで初めて実行する際、「デフォルト・ドメインの作成」ダイアログが表示され、新しいドメインの管理パスワードを定義します。

アプリケーション・ターゲットを実行すると、プロジェクトとワークスペースのアーティファクトに基づいて、デプロイするJava EEモジュールのタイプが自動的に検出されます。次に、アプリケーションを統合WebLogic Serverにデプロイするためのメモリー内デプロイメント・プロファイルが作成されます。プロジェクトとアプリケーション・ワークスペースのファイルは、展開EARディレクトリ構造にコピーされます。このファイル構造は、アプリケーションをEARファイルにデプロイする場合のEARファイル構造を忠実に模したものです。続いて、標準のデプロイ手順に従って、展開EARファイルが統合WebLogic Serverに登録およびデプロイされます。展開EAR方式を取ることで、実際のEARファイルのパッケージ化とパッケージ化解除によって生じるパフォーマンス・オーバーヘッドが軽減されます。

要約すれば、実行ターゲットを選択して統合WebLogic Serverでアプリケーションを実行すると、JDeveloperによって次のことが行われます。

  • プロジェクトとアプリケーションのアーティファクトに基づいて、デプロイするJava EEモジュールのタイプを検出

  • メモリー内にデプロイメント・プロファイルを作成

  • プロジェクトとアプリケーションのファイルを、アプリケーションの展開EARファイルをシミュレートしたファイル構造を持つ作業ディレクトリにコピー

  • 模擬EARを統合WebLogic Serverに登録およびデプロイするためのデプロイ・タスクを実行


注意:

統合WebLogic Serverでアプリケーションを実行する際、アプリケーションに対して作成されたデプロイメント・プロファイルは無視されます。

アプリケーションは、統合WebLogic Serverの基本ドメインで実行されます。この基本ドメインは、スタンドアロンのWebLogic Serverインスタンスの基本ドメインと同じ構成になっています。つまり、この基本ドメインは、Oracle Fusion Middleware構成ウィザードを使用して、スタンドアロンのWebLogic Serverインスタンスにデフォルト・オプションで基本ドメインを作成した場合と同一です。

JDeveloperでは、JDeveloperテクノロジ拡張に基づいて、この基本ドメインが必要なドメイン拡張テンプレートで拡張されます。たとえば、JDeveloper Studioをインストールした場合、統合WebLogic Server環境がADFランタイム・テンプレート(JRF Fusion Middlewareランタイム・ドメイン拡張テンプレート)で自動的に構成されます。

統合WebLogic Serverのデフォルト・ドメインを明示的に作成することもできます。このデフォルト・ドメインを使用して、アプリケーションを実行およびテストできます。「アプリケーション・サーバー」ウィンドウを開き、IntegratedWebLogicServerを右クリックして、「デフォルト・ドメインの作成」を選択します。

H.2.1 統合WebLogic Serverでのアプリケーションの実行方法

アプリケーションを統合WebLogic Serverで実行して、テストすることができます。ブレークポイントを設定して、ADF宣言デバッガでアプリケーションを実行することも可能です。

始める前に:

統合WebLogic Serverでアプリケーションを実行するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.2項「統合WebLogic ServerでのADFアプリケーションの実行」を参照してください。

統合WebLogic Serverでアプリケーションを実行するには:

  1. 「アプリケーション」ウィンドウで、プロジェクト、バインドなしタスク・フロー、JSFページ、ファイルのいずれかを、実行ターゲットとして選択します。

  2. 実行ターゲットを右クリックして、「実行」または「デバッグ」を選択します。

    アプリケーションを初めて実行し、新しいドメインを統合WebLogic Serverで開始する際に、「デフォルト・ドメインの作成」ダイアログが表示されます。ダイアログを使用して新しいドメインの管理者パスワードを定義します。入力するパスワードは8文字以上で、数字が含まれている必要があります。

H.3 アプリケーションの準備

ADFアプリケーションをスタンドアロンGlassFish Serverにデプロイする前に、JDeveloperで必須のタスクを実行し、デプロイに向けてアプリケーションを準備する必要があります。

タスクは次のとおりです。


注意:

ADFセキュリティはGlassFishに対応のADF Essentialsではサポートされていません。GlassFish固有のセキュリティをADFアプリケーションで構成する必要があります。GlassFishセキュリティの構成の詳細は、http://docs.oracle.com/cd/E18930_01/html/821-2418/beabg.html#scrolltocを参照してください。

H.3.1 ターゲット・アプリケーション・サーバーへの接続の作成方法

JDeveloperアプリケーション・サーバー接続を介して、GlassFish Serverにアプリケーションをデプロイできます。

始める前に:

アプリケーション・サーバー接続を作成するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

次のタスクを完了する必要があります。

GlassFish Serverをインストールします。

アプリケーション・サーバーへの接続の作成方法:

  1. 「アプリケーション・サーバー接続」ウィザードを起動します。

    次の操作を実行できます。

    • 「アプリケーション・サーバー」ウィンドウで、「アプリケーション・サーバー」を右クリックして、「新規アプリケーション・サーバー」を選択します。

    • 「新規ギャラリ」で、「一般」を展開し、「接続」「アプリケーション・サーバー接続」を選択して、「OK」をクリックします。

    • 「リソース」ウィンドウで、「新規」「IDE接続」→「アプリケーション・サーバー」を選択します。

  2. 「使用方法」ページの「アプリケーション・サーバー接続の作成」ダイアログで、「スタンドアロン・サーバー」を選択します。

  3. 「名前とタイプ」ページで、接続名を入力します。

  4. 「接続タイプ」ドロップダウン・リストで、次を選択します。

    • GlassFish Serverへの接続を作成する場合は「GlassFish 3.1」

  5. 「次へ」をクリックします。

  6. 「認証」ページで、GlassFish Serverへのアクセスを認可された管理ユーザーのユーザー名とパスワードを入力します。

  7. 「次へ」をクリックします。

  8. 「構成」ページで、GlassFish Serverの次の情報を入力します。

    • ホスト名: GlassFish Serverが稼働しているマシン名を入力します。名前を入力しない場合は、デフォルトのlocalhostになります。

    • RMIポート: 必要に応じて、サーバーのRMIポート番号を変更します。デフォルト値は8686です。

    • HTTPポート: デフォルトでは、GlassFishはポート8080でHTTPリクエストをリスニングします。このポート番号は必要に応じて変更できます。

    • 管理HTTPポート: デフォルトでは、GlassFishはポート4848を管理用として使用します。このポート番号は必要に応じて変更できます。

    • セキュアな管理の有効化: GlassFishでリモート・ログインおよびリモート接続を可能にする場合に選択します。


    注意:

    GlassFish 3.1.2を使用し、GlassFishとは別のマシンでJDeveloperが稼働している場合は、GlassFishでセキュアな管理を有効にし、リモート・ログインできるようにする必要があります。JDeveloperとGlassFishが同一マシン上にある場合は、セキュアな管理を有効にする必要はありません。

  9. 「次へ」をクリックします。

  10. テスト・ページで、「接続のテスト」をクリックして、接続をテストします。

    JDeveloperにより、数種類の接続テストが実行されます。アプリケーションをデプロイできるためには、JSR-88テストに合格する必要があります。テストに不合格だった場合は、ウィザードの前のページに戻って、構成を修正します。

  11. 「終了」をクリックします。

H.3.2 デプロイメント・プロファイルの作成方法

デプロイメント・プロファイルでは、ターゲット環境にデプロイされるアーカイブにアプリケーションがパッケージ化される方法が定義されています。デプロイメント・プロファイルには、次の役割があります。

  • 作成されるアーカイブ・ファイルのフォーマットと内容を指定します。

  • パッケージ対象となるソース・ファイル、デプロイメント・ディスクリプタ、およびその他の補助ファイルをリストします。

  • 作成されるアーカイブ・ファイルのタイプおよび名前を記述します。

  • 依存情報、プラットフォーム固有の指示、およびその他の情報を示します。

アプリケーションにデプロイするWebユーザー・インタフェース・プロジェクトそれぞれにWARデプロイメント・プロファイルが必要です。アプリケーションレベルのEARデプロイメント・プロファイルも必要になるので、その中に組み込むプロジェクト(WARプロファイルなど)をリストから選択する必要があります。アプリケーションがデプロイされるとき、EARファイルは、デプロイメント・プロファイルで選択されたすべてのプロジェクトを組み込みます。


注意:

ADF Fusion Webアプリケーション・テンプレートを使用してプロジェクトまたはアプリケーションを作成する場合、JDeveloperによりデフォルトのWARおよびEARデプロイメント・プロファイルが自動的に作成されます。通常、デプロイメント・プロファイルを手動で編集または作成する必要はありません。

ADFアプリケーションの場合、アプリケーションはEARファイルとしてのみデプロイできます。デプロイメント・プロファイルを作成する際に、アプリケーションの一部となるWARファイルをEARファイルに組み込む必要があります。

H.3.2.1 WARデプロイメント・プロファイルの作成

アプリケーションにパッケージ化するWebベースのプロジェクトごとに、WARデプロイメント・プロファイルを作成する必要があります。通常、WARプロファイルには必要な依存データ・モデル・プロジェクトが組み込まれます。

始める前に:

WARデプロイメント・プロファイルを作成するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

次のタスクを完了する必要があります。

Webベースのプロジェクトを作成します。ADF Fusion Webアプリケーション・テンプレートを使用した場合は、すでにデフォルトのWARデプロイメント・ファイルが存在します。

アプリケーションのWARデプロイメント・プロファイルを作成するには:

  1. 「アプリケーション」ウィンドウで、デプロイするWebプロジェクトを右クリックし、「新規」「ギャラリから」を選択します。

    各WebプロジェクトのWARプロファイルを作成します。

  2. 「新規ギャラリ」で、「一般」を展開し、「デプロイメント・プロファイル」「WARファイル」を選択して、「OK」をクリックします。

    「カテゴリ」ツリーに「デプロイメント・プロファイル」が表示されない場合は、「すべての機能」タブをクリックします。

  3. 「デプロイメント・プロファイルの作成 -- WARファイル 」ダイアログで、プロジェクト・デプロイメント・プロファイルの名前を入力して、「OK」をクリックします。

  4. 「WARデプロイメント・プロファイルのプロパティの編集」ダイアログの左ペインで項目を選択すると、右ペインにダイアログ・ページが表示されます。ダイアログのページでプロパティ値を設定して、プロファイルを構成します。次のリストの項目は、特定のアプリケーションには該当しないものもあります。

    • 「WEB-INF/lib/Contributors」パネルで、ADF Faces Runtime 11JSTL 1.2、およびADFm、ADFc、ADFvの各ライブラリがデプロイ済としてマークされていることを確認します。

    • 「ファイル・グループ」→「Webファイル」→「フィルタ」→WEB-INFを選択し、weblogic.xmlの選択を解除します。

    • 「ファイル・グループ」→Webファイル/クラス→「フィルタ」→META-INFを選択し、ejb-jar.xmlの選択を解除します。

    • 「ファイル・グループ」→Webファイル/クラス→「フィルタ」→「パス」を選択し、serviceinterfaceの選択を解除します。

    • 「ファイル・グループ」→Webファイル/クラス→「フィルタ」→「パス」を選択し、「サーバー」の選択を解除します。

    • Java EE Webコンテキストのルート設定を変更する必要がある場合もあります。これを行うには、左側のペインで、「一般」を選択します。

      デフォルトでは、「プロジェクトのJava EE Webコンテキスト・ルートを使用」が選択されている場合、関連付けられている値は、Application1-Project1-context-rootのようにプロジェクト名に設定されています。ユーザーに違う名前でアプリケーションにアクセスさせる場合は、この名前を変更する必要があります。

    • 「プラットフォーム」「GlassFish 3.1」を選択します。

  5. 「OK」をクリックして、デプロイメント・プロファイル・プロパティのダイアログを終了します。

  6. 「OK」を再度クリックして、プロジェクト・プロパティのダイアログを終了します。

  7. デプロイするすべてのWebプロジェクトに対して、手順1から6を繰り返します。

H.3.2.2 アプリケーションレベルのEARデプロイメント・プロファイルの作成

EARファイルには、アプリケーション・サーバーでアプリケーションを実行するために必要なアプリケーション・アーティファクトがすべて含まれています。ADF Fusion Webアプリケーション・テンプレートを使用した場合は、すでにデフォルトのEARデプロイメント・ファイルが存在します。EARファイルの詳細は、H.4.5項「EARファイルとパッケージ化に関する必知事項」を参照してください。

始める前に:

アプリケーションレベルのEARデプロイメント・プロファイルを作成するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

次のタスクを完了する必要があります。

H.3.2.1項「WARデプロイメント・プロファイルの作成」の説明に従って、WARデプロイメント・プロファイルを作成します。

アプリケーションのEARデプロイメント・プロファイルを作成するには:

  1. 「アプリケーション」ウィンドウで、アプリケーションを右クリックして、「新規」「ギャラリから」を選択します。

    アプリケーションのEARプロファイルを作成します。

  2. 「新規ギャラリ」で、「一般」を展開し、「デプロイメント・プロファイル」「EARファイル」を選択して、「OK」をクリックします。

    「カテゴリ」ツリーに「デプロイメント・プロファイル」が表示されない場合は、「すべての機能」タブをクリックします。

  3. 「デプロイメント・プロファイルの作成 -- EARファイル」ダイアログで、アプリケーション・デプロイメント・プロファイルの名前を入力して、「OK」をクリックします。

  4. 「EARデプロイメント・プロファイルのプロパティの編集」ダイアログの左ペインで項目を選択すると、右ペインにダイアログ・ページが表示されます。ダイアログのページでプロパティ値を設定して、プロファイルを構成します。

    • 「ファイル・グループ」→「アプリケーション・ディスクリプタ」→「フィルタ」を選択し、weblogic-application.xmlの選択を解除します。

    • 「アプリケーション・アセンブリ」を選択し、続いて「Java EEモジュール」リストで、デプロイメントに組み込むすべてのプロジェクト・プロファイルを選択します(WARプロファイルを含む)。

    • 「プラットフォーム」を選択し、デプロイ先となるアプリケーション・サーバーを選択した後、「ターゲット接続」ドロップダウン・リストから、ターゲット・アプリケーション接続を選択します。GlassFishの場合は、「GlassFish 3.1」を選択します。

  5. 再度「OK」をクリックして、「EARデプロイメント・プロファイルのプロパティの編集」ダイアログを終了します。

  6. 「OK」を再度クリックして、アプリケーション・プロパティのダイアログを終了します。


注意:

カスタマイズ・クラスがEARクラス・パスに正しく追加されていることを検証するには、EARプロファイルをファイル・システムにデプロイします。その後、EARを調べ、カスタマイズ・クラスJARがEARクラス・パス(EAR/libディレクトリ)で使用でき、WARクラス・パス(WEB-INF/libディレクトリおよびWEB-INF/classesディレクトリ)で使用できないことを確認します。

H.3.2.3 デプロイメント・プロファイル・プロパティの表示および変更

デプロイメント・プロファイルを作成したら、そのプロパティを表示および変更できます。

始める前に:

デプロイメント・プロファイル・プロパティを表示および変更するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

プロジェクトのデプロイメント・プロファイルを作成、編集、または削除するには:

  1. 「アプリケーション」ウィンドウで、プロジェクトを右クリックして、「プロジェクト・プロパティ」を選択します。

  2. 「プロジェクト・プロパティ」ダイアログで、「デプロイ」をクリックします。

    「デプロイメント・プロファイル」リストには、現在プロジェクトに定義されているすべてのプロファイルが表示されます。

  3. リストから、デプロイメント・プロファイルを1つ選択します。

  4. 「編集」または「削除」をクリックして、デプロイメント・プロファイルを編集または削除します。

H.3.3 デプロイメント・ディスクリプタの作成および編集方法

デプロイメント・ディスクリプタは、アプリケーションのデプロイ構成を定義するサーバー構成ファイルで、必要に応じてJava EEアプリケーションとともにデプロイされます。プロジェクトに必要なデプロイメント・ディスクリプタは、プロジェクトが使用しているテクノロジとターゲット・アプリケーション・サーバーのタイプによって異なります。デプロイメント・ディスクリプタは、ソース・ファイルとして作成および編集できるXMLファイルですが、JDeveloperは、ほとんどのディスクリプタ・タイプについて、プロパティの表示と設定に使用できるダイアログまたは概要エディタを備えています。これらのファイルを宣言的に編集できない場合、JDeveloperはその内容を編集するためにソースエディタでXMLファイルを開きます。

標準のJava EEデプロイメント・ディスクリプタ(application.xmlおよびweb.xmlなど)に加えて、ターゲット・アプリケーション・サーバーに固有のデプロイメント・ディスクリプタも使用できます。

H.3.3.1 デプロイメント・ディスクリプタの作成

必要なデプロイメント・ディスクリプタの多くは、自動的に作成されます。必要なデプロイメント・ディスクリプタが存在しない場合や、追加のディスクリプタを作成する必要がある場合は、JDeveloperを使用して作成できます。

始める前に:

デプロイメント・ディスクリプタを作成するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

次のタスクを完了する必要があります。

デプロイメント・ディスクリプタがすでに生成されているかどうかを確認します。

デプロイメント・ディスクリプタの作成方法:

  1. 「アプリケーション」ウィンドウで、ユーザー・インタフェース・プロジェクトを開き、「WEB-INF」を選択して、「新規」「ギャラリから」をクリックします。

  2. 「新規ギャラリ」で「一般」を開き、「XMLドキュメント」を選択して、「OK」をクリックします。

  3. XMLファイルの作成ダイアログで、ディスクリプタの名前を入力し、「OK」をクリックします。

    たとえば、GlassFish固有の情報を定義するためのglassfish-web.xmlを作成できます。

  4. 概要エディタでGlassFish用のエントリを追加します。

    例H-1に、glassfish-web.xmlディスクリプタの例を示します。

    glassfish-web.xmlディスクリプタを使用して、web.xmlで定義されていない設定を追加したり、web.xmlですでに定義されている設定を変更できます。たとえば、web.xmlで定義されているjdbc/Connections1DS設定(例H-2参照)を、res-ref-nameおよびjndi-nameというエントリをglassfish-web.xmlに追加することで(例H-1参照)、オーバーライドできます。glassfish-web.xmlの設定後は、jdbc/NewConnections1DSjdbc/Connections1DSのかわりに使用されます。ただし、res-ref-nameセクションはオプションです。

    例H-1 glassfish-web.xmlのサンプル

    <glassfish-web-app> 
        <context-root>DeptApp-ViewController-context-root</context-root>
        <resource-ref> 
            <res-ref-name>jdbc/Connection1DS</res-ref-name> 
            <jndi-name>jdbc/NewConnection1DS</jndi-name> 
        </resource-ref> 
        <class-loader delegate="false"/> 
        <property value="true" name="useBundledJsf"/> 
    </glassfish-web-app>
    

注意:

EARファイルの場合は、1つのアプリケーションまたはワークスペースに同じタイプの複数のデプロイメント・ディスクリプタを作成しないでください。これらのファイルはプロジェクトに割当て可能ですが、アプリケーション・ワークスペース・スコープがあります。アプリケーションの複数のプロジェクトが同じデプロイメント・ディスクリプタを使用すると、起動されたプロジェクトに属するディスクリプタが他のディスクリプタより優先されます。この制限はapplication.xmlに適用されます。

アプリケーション・レベルのディスクリプタを作成するために最適な場所は、「アプリケーション」ウィンドウの「アプリケーション・リソース」パネルの「ディスクリプタ」ノードです。アプリケーションは、確実に、正しいディスクリプタとともに作成されます。

プロジェクトで作成されたアプリケーションレベル・ディスクリプタは、実行時に無視されます。実行時には、アプリケーション・リソースのディスクリプタ、またはEARレベルで生成されたディスクリプタのみが使用されます。


H.3.3.2 デプロイメント・ディスクリプタ・プロパティの表示または変更

デプロイメント・ディスクリプタを作成したら、JDeveloperの各種ダイアログを使用するか、ソース・エディタでファイルを編集することで、そのプロパティを変更できます。デプロイメント・ディスクリプタは、通常「アプリケーション・ソース」ノードにあるXMLファイル(application.xmlなど)です。

始める前に:

デプロイメント・ディスクリプタを表示または変更するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

デプロイメント・ディスクリプタのプロパティの表示または変更方法:

  1. 「アプリケーション」ウィンドウまたは「アプリケーション・リソース」パネルで、デプロイメント・ディスクリプタをダブルクリックします。

  2. 概要エディタで、「概要」タブまたは「ソース」タブを選択し、プロパティ値を設定してディスクリプタを構成します。

    概要エディタが使用できない場合は、ソース・エディタでファイルが開きます。

H.3.3.3 アプリケーション・サーバー互換のapplication.xmlファイルの構成

ご使用のJava EE 1.5に準拠するようにapplication.xmlファイルを構成しなければならないことがあります。


注意:

通常、プロジェクトには互換性のあるapplication.xmlファイルがあるため、この手順を実行する必要はありません。

始める前に:

application.xmlファイルを構成するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

application.xmlファイルを構成するには:

  1. 「アプリケーション」ウィンドウで、アプリケーションを右クリックして、「新規」「ギャラリから」を選択します。

  2. 「新規ギャラリ」で、「一般」を展開し、「デプロイメント・ディスクリプタ」「Java EEデプロイメント・ディスクリプタ・ウィザード」を選択して、「OK」をクリックします。

  3. 「Java EEデプロイメント・ディスクリプタの作成」ダイアログの「ディスクリプタの選択」ページで、「application.xml」を選択して、「次へ」をクリックします。

  4. 「バージョンの選択」ページで、Java EE 5.0以上と互換性を持たせるために「5.0」を選択し、「次へ」をクリックします。

  5. 「サマリー」ページで「終了」をクリックします。

  6. application.xmlファイルを適切な値で編集します。

H.3.3.4 GlassFish Server互換のweb.xmlファイルの構成

ご使用のJava EEバージョンに準拠するようにweb.xmlファイルを構成する必要がある場合があります。

例H-2に、JDBC接続の設定を含むweb.xmlファイルを示します。設定の詳細と必要なその他の設定は、A.13項「web.xml」を参照してください。

例H-2 サンプルのweb.xmlファイルの抜粋

<resource-ref> 
      <description>DB Connection</description> 
      <res-ref-name>jdbc/Connection1DS</res-ref-name> 
      <res-type>javax.sql.DataSource</res-type> 
      <res-auth>Container</res-auth> 
</resource-ref> 

注意:

通常、プロジェクトには互換性のあるweb.xmlファイルがあるため、この手順を実行する必要はありません。プロジェクトを作成すると、初期のweb.xmlファイルが自動的に作成されます。

始める前に:

web.xmlファイルを構成するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

web.xmlファイルを構成するには:

  1. 「アプリケーション」ウィンドウで、プロジェクトを右クリックして、「新規」「ギャラリから」を選択します。

  2. 「新規ギャラリ」で、「一般」を展開し、「デプロイメント・ディスクリプタ」「Java EEデプロイメント・ディスクリプタ」を選択して、「OK」をクリックします。

  3. 「Java EEデプロイメント・ディスクリプタの作成」ダイアログの「ディスクリプタの選択」ページで、「web.xml」を選択して、「次へ」をクリックします。

  4. 「バージョンの選択」ページで、使用するバージョンを選択し、「次へ」をクリックします。

    バージョン3.0はJava EE 6.0以上と互換性があり、バージョン2.5はJava EE 5.0と互換性があります。

  5. 「サマリー」ページで「終了」をクリックします。

  6. 概要エディタでweb.xmlファイルを開きます。

  7. 「フィルタ」タブを選択し、JpsFilterを削除します。

H.3.4 GlassFish用JDBCデータソースの有効化方法

アプリケーションでADFビジネス・コンポーネントを使用する場合、アプリケーションの一部としてADFビジネス・コンポーネント用に定義されているデータ・ソースがGlassFishコンテナで定義されているデータ・ソースと一致することを確認しなければならないことがあります。

アプリケーションでJDBCデータソースを使用するようにADFアプリケーションを構成するには、アプリケーションのbc4j.xcfgファイルを編集します。

始める前に:

JDBCの構成時に使用可能な各オプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

JDBCデータソースが有効になるようにbc4j.xcfgファイルを構成するには:

  1. 「アプリケーション」ウィンドウで、モデル・プロジェクトを開き、アプリケーション・モジュールをクリックします。

  2. アプリケーション・モジュールの概要エディタで「構成」を選択し、bc4j.xcfgをクリックします。

  3. bc4j.xcfgの概要エディタで「ソース」タブを選択します。

  4. 『Oracle ADFアプリケーションの管理』の付録「GlassFish Serverの構成」で説明するように、ファイル内で定義されているCustom JDBCDataSourceエントリが、GlassFish Server用に定義されているJDBCデータソースと一致することを確認します。

    たとえば、次の例は、bc4j.xcfgファイルに定義されているJDBCDataSourceプロパティを示しています。

    <BC4JConfig version="11.1" xmlns="http://xmlns.oracle.com/bc4j/configuration">
       <AppModuleConfigBag ApplicationName="model.AppModule">
          <AppModuleConfig name="AppModuleLocal" jbo.project="model.Model"
             ApplicationName="model.AppModule" DeployPlatform="LOCAL">
             <Database jbo.TypeMapEntries="OracleApps"/>
             <Security AppModuleJndiName="model.AppModule"/>
             <Custom ns0:JDBCDataSource="jdbc/OracleDS"
               xmlns:ns0="http://xmlns.oracle.com/bc4j/configuration"/>
          </AppModuleConfig>
          <AppModuleConfig name="AppModuleShared" jbo.project="model.Model"
             ApplicationName="model.AppModule" DeployPlatform="LOCAL">
             <AM-Pooling jbo.ampool.maxpoolsize="1"
              jbo.ampool.isuseexclusive="false"/>
             <Database jbo.TypeMapEntries="OracleApps"/>
             <Security AppModuleJndiName="model.AppModule"/>
             <Custom ns0:JDBCDataSource="jdbc/OracleDS"
               xmlns:ns0="http://xmlns.oracle.com/bc4j/configuration"/>
          </AppModuleConfig>
       </AppModuleConfigBag>
    </BC4JConfig>
    

H.3.5 初期コンテキスト・ファクトリの変更方法

アプリケーション(EJBベースのアプリケーションなど)でJNDI参照が必要な場合は、初期コンテキスト・ファクトリのクラス名をGlassFishコンテキスト・ファクトリに変更する必要があります。

初期コンテキスト・ファクトリを変更するには:

  1. 「アプリケーション」ウィンドウで、モデル・プロジェクトを開き、DataControls.dcxファイルをダブルクリックします。

  2. 概要エディタで、「ソース」タブをクリックします。

  3. initial-context-factory="com.sun.enterprise.naming.SerialInitContextFactory"となるように、initial-context-factoryを編集します。

H.4 アプリケーションのデプロイ

ADFアプリケーションは、JDeveloperを使用してGlassFish Serverに直接デプロイすることも、アーカイブ・ファイルを作成し、他のツールを使用してアプリケーション・サーバーにデプロイすることもできます。


注意:

Oracle ADFを使用するアプリケーションをスタンドアロン・アプリケーション・サーバーにデプロイする前に、ADFランタイム・ライブラリのインストールや構成値の設定などのタスクを実行して、GlassFish Server環境を準備する必要があります。詳細は、『Oracle ADFアプリケーションの管理』の付録「GlassFish Serverの構成」を参照してください。

表H-1に、アプリケーションのデプロイおよびデプロイ・サイクル中に使用できる一般的なデプロイ方法を示します。開発環境でのデプロイから本番環境のデプロイまでの順序でデプロイ方法をリストしています。本番環境では、システム管理者がGlassFish管理コンソールまたはスクリプトを使用してアプリケーションをデプロイします。

表H-1 開発環境または本番環境でのデプロイ方法

デプロイ方法 環境 使用する状況

JDeveloperから直接実行

テストまたは開発

この方法は、アプリケーションの開発中に使用します。編集プロセスとデプロイ・プロセスを何度も繰り返す必要があるからです。

JDeveloperには統合WebLogic Serverが含まれています。この統合WebLogic Serverでアプリケーションを実行してテストできます。

アプリケーションのテストは統合GlassFish Serverではなく統合WebLogic Serverで行います。統合WebLogic Serverでテストを行った後で、スタンドアロンGlassFish Serverにデプロイし、さらにテストを実行できます。

JDeveloperを使用してターゲットGlassFish Serverに直接デプロイ

テストまたは開発

この方法は、テスト環境のアプリケーション・サーバーにアプリケーションをデプロイしてテストする準備ができている場合に使用します。

テスト環境を使用して、Antなどでデプロイメント・スクリプトを開発することもできます。

JDeveloperを使用してEARファイルにデプロイし、ターゲットのGlassFish Serverのデプロイ用ツールを使用

テストまたは開発

この方法は、テスト環境のアプリケーション・サーバーにアプリケーションをデプロイしてテストする準備ができている場合に使用します。JDeveloperから直接デプロイするかわりに、EARファイルにデプロイしてから、他のツールを使用してアプリケーション・サーバーにデプロイすることができます。

テスト環境を使用して、Antなどでデプロイメント・スクリプトを開発することもできます。

GlassFishのasadminコマンドまたはGlassFish管理コンソールを使用

本番

アプリケーションがテスト環境と本番環境にある場合です。本番環境では、システム管理者がGlassFishのasadminコマンドまたはGlassFishの管理コンソールを使用する方法が一般的です。


H.4.1 JDeveloperからアプリケーション・サーバーへのデプロイ方法

始める前に:

JDeveloperからアプリケーション・サーバーにデプロイするときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

次のタスクを完了する必要があります。

EARファイルにデプロイするアプリケーションレベルのデプロイメント・プロファイルを作成します。

JDeveloperからターゲット・アプリケーション・サーバーへのデプロイ方法:

  1. 「アプリケーション」ウィンドウで、アプリケーションを右クリックして「デプロイ」を選択し、デプロイメント・プロファイルを選択します。

    GlassFishデプロイメント・プロファイルが選択されていることを確認してください。

  2. 「デプロイ」ウィザードの「デプロイメント・アクション」ページで、「アプリケーション・サーバーへのデプロイ」を選択し、「次へ」をクリックします。

  3. 「サーバーの選択」ページで、アプリケーション・サーバー接続を選択し、「次へ」をクリックします。

  4. 「終了」をクリックします。

    デプロイ中は、処理ステップがデプロイメント・ログ・ウィンドウに表示されます。作成中のモジュールの内容(アーカイブまたは展開EAR)を確認するには、ログ・ウィンドウに表示されたリンクをクリックします。アーカイブ・ファイルまたは展開EARファイルが該当するエディタまたはディレクトリ・ウィンドウで開き、確認できるようになります。


    注意:

    Java EEアプリケーションをデプロイする場合は、「アプリケーション」ウィンドウ内でJava EEアプリケーションの隣にあるアプリケーション・メニューをクリックします。

    アプリケーション・サーバー接続の作成の詳細は、H.3.1項「ターゲット・アプリケーション・サーバーへの接続の作成方法」を参照してください。

H.4.2 JDeveloperからのデプロイに関する必知事項

GlassFish用に作成したEARデプロイメント・プロファイルを使用してアプリケーションをデプロイすると、JDeveloperでは次のことが行われます。

  • 必要なADFモデル、ADFコントローラおよびADFビュー・ライブラリJARがEARファイルに挿入されます。

  • adf-share-glassfish.jarがWARに挿入されます。

  • GlassFishアプリケーション・ライフサイクル・リスナーADFGlassFishAppLifeCycleListenerのエントリがweb.xmlファイルに挿入されます。

  • 他のリスナー・エントリ(ADFConnectionLifeCycleCallBackADFConfigLifeCycleCallBackおよびBC4JConfigLifeCycleCallBack)がweb.xmlファイルから削除されます。

H.4.3 デプロイメント用のEARファイルの作成方法

デプロイメント・プロファイルを使用してアーカイブ・ファイル(EARファイル)を作成することもできます。後から、GlassFish管理コンソールを使用して、アーカイブ・ファイルをデプロイすることができます。

ADFアプリケーションはEARファイル(通常はWARのコンポーネントを含む)にカプセル化されますが、部分的にEARではデプロイされないことがあります。

始める前に:

デプロイするためにEARファイルを作成するときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

次のタスクを完了する必要があります。

EARファイルにデプロイするアプリケーションレベルのデプロイメント・プロファイルを作成します。

EARアーカイブ・ファイルを作成するには:

  • 「アプリケーション」ウィンドウで、デプロイメント・プロファイルを含むアプリケーションを右クリックし、「デプロイ」→「deployment profile」→「EARファイルへ」を選択します。

    EARファイルがアプリケーションレベルでデプロイされ、そのEARファイルにデータ・モデル・プロジェクトのJARファイルとユーザー・インタフェース・プロジェクトのWARファイルへの依存性が存在する場合、各ファイルはデフォルトで次のディレクトリに保存されます。

    • ApplicationDirectory/deploy/EARdeploymentprofile.EAR

    • ApplicationDirectory/ModelProject/deploy/JARdeploymentprofile.JAR

    • ApplicationDirectory/ViewControllerProject/deploy/WARdeploymentprofile.WAR


ヒント:

「表示」「ログ」を選択し、アーカイブ・ファイルの作成時に生成されたメッセージを表示します。

H.4.4 ADFライブラリに関する必知事項

ADFライブラリは、ADFコンポーネント(ADFタスク・フロー、ページ、アプリケーション・モジュールなど)に対して登録されたJARサービスを含むJARファイルです。プロジェクトのADFコンポーネントを再利用する場合は、プロジェクトのADFライブラリ・デプロイメント・プロファイルを作成してから、そのプロファイルに基づいたADFライブラリJARを作成します。

「リソース」ウィンドウを使用するか、手動でライブラリのクラスパスに追加する方法でADFライブラリJARを追加すると、アプリケーションまたはプロジェクトでそのADFライブラリJARを使用できるようになります。「デフォルトでデプロイ済」オプションが選択されている場合、プロジェクトに追加されたADFライブラリJARは、プロジェクトのWARファイルに組み込まれます。

詳細は、第44章「アプリケーション・コンポーネントの再利用」を参照してください。

H.4.5 EARファイルとパッケージ化に関する必知事項

ADFアプリケーションをEARファイルにパッケージ化する場合、EARファイルには次のものを組み込むことができます。

  • WARファイル: Webベースのビュー・コントローラ・プロジェクトはそれぞれWARファイルにパッケージ化します。

  • ADFライブラリJARファイル: アプリケーションでADFライブラリJARが使用される場合、そのJARファイルはEARにパッケージ化できます。

  • その他のJARファイル: アプリケーションに必要な依存JARファイルが他にもある場合があります。それらはEARにパッケージ化できます。

H.4.6 アプリケーション・サーバーへのasadminコマンドを使用したデプロイ方法

始める前に:

JDeveloperからアプリケーション・サーバーにデプロイするときに使用できるオプションについて理解しておくと役立ちます。詳細は、H.3項「アプリケーションの準備」を参照してください。

asadminコマンドを使用してターゲット・アプリケーション・サーバーをデプロイするには:

  1. GlassFish Serverのasadminシェルを起動します。

  2. deployコマンドを起動します。

    たとえば、次のコマンドによってapplication1.earがGlassFish Serverにデプロイされます。

    deploy \--target=server \--force /path/application1.ear
    

H.4.7 スクリプトとAntを使用したアプリケーションのデプロイ方法

コマンドを使用してアプリケーションをデプロイし、そのコマンドをスクリプトに記述してプロセスを自動化することができます。ojdeployコマンドを使用すると、JDeveloperなしでアプリケーションをデプロイできます。Antスクリプトを使用してアプリケーションをデプロイすることもできます。JDeveloperには、Antスクリプトの作成に役立つ機能が用意されています。要件によっては、通常のスクリプトをAntスクリプトと組み合せることも可能です。

コマンド、スクリプト、Antの詳細は、『Oracle ADFアプリケーションの管理』を参照してください。

H.5 アプリケーションのテストとデプロイの検証

アプリケーションは、デプロイが完了したら、アプリケーション・サーバーからテストできます。ADFアプリケーションをテストするには、ブラウザ・ウィンドウを開き、次のURLを入力します。

  • Faces以外のページの場合: http://<host>:port/<context root>/<page>

  • Facesページの場合: http://<host>:port/<context root>/faces/<view_id>

    <view_id>は、ADFタスク・フローにおけるビュー・アクティビティのビューIDです。


ヒント:

アプリケーションのコンテキスト・ルートは、ユーザー・インタフェース・プロジェクト設定に、デフォルトでApplicationName/ProjectName/context-rootとして設定されています。この名前を短くするには、ターゲット・アプリケーション・サーバー全体で一意の名前を指定します。ユーザー・インタフェース・プロジェクトを右クリックし、「プロジェクト・プロパティ」を選択します。「プロジェクト・プロパティ」ダイアログで、「Java EEアプリケーション」を選択し、コンテキスト・ルートの一意の名前を入力します。


注意:

FacesページのURLには、/facesが含まれている必要があります。これは、JDeveloperがFacesサーブレットとの関連付けのために、/facesというURLパターンを使用するようweb.xmlファイルを構成するためです。Facesサーブレットは、リクエスト単位処理を実行し、URL内の/faces部を取り除いた後、そのURLをJSPに転送します。URLに/facesを指定しないと、Facesサーブレットは関与しません(URLパターンが一致しないためです)。JSPは必要なJSFリクエスト単位処理なしで実行されます。