ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Application Development Framework Java EE開発者ガイド
11gリリース1(11.1.1)
B61007-01
  目次
目次

戻る
戻る
 
 

8 ADF Java EEアプリケーションのデプロイ

この章では、ターゲット・アプリケーション・サーバーにOracle ADF Java EEアプリケーションをデプロイする方法を説明します。デプロイメント・プロファイルを作成する方法、デプロイメント・ディスクリプタを作成する方法、およびADFランタイム・ライブラリをロードする方法も説明します。また、Oracle WebLogic Serverへのデプロイについても触れます。

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

8.1 ADF Java EE Webアプリケーションのデプロイの概要

デプロイは、アプリケーション・ファイルをアーカイブ・ファイルとしてパッケージ化し、ターゲット・アプリケーション・サーバーに転送するプロセスです。JDeveloperを使用して、Oracle ADF Java EE WebアプリケーションをOracle WebLogic Serverに直接デプロイすることも、間接的に、つまりアーカイブ・ファイルをデプロイメント・ターゲットにしてまずそれにデプロイし、そのアーカイブ・ファイルを後からターゲット・サーバーにインストールすることもできます。アプリケーション開発の際には、JDeveloperを使用して、統合WebLogic Serverでアプリケーションを実行することもできます。JDeveloperは、Oracle WebLogic Serverクラスタへのデプロイをサポートしています。JDeveloperを使用して、クラスタ内の個々の管理対象サーバーにデプロイすることはできません。


注意:

通常、JDeveloperは開発やテストの目的でアプリケーションをデプロイする場合に使用します。Oracle ADF Java EE Webアプリケーションを本番用にデプロイする場合は、Enterprise ManagerまたはWLSTスクリプトを使用して、本番レベルのOracle WebLogic Serverにデプロイできます。

後期テスト環境や本番環境へのデプロイの詳細は、Oracle Fusion Middleware Oracle Application Development Frameworkの管理者ガイドを参照してください。


Oracle WebLogic Server Java EEアプリケーションは、標準化されたモジュール型コンポーネントに基づいています。Oracle WebLogic Serverは、そうしたモジュール用のサービス一式を備えており、細かいアプリケーション動作の多くを自動的に処理するため、プログラミングは必要ありません。JDeveloperと互換性のあるOracle WebLogic Serverのバージョンについては、認定情報のWebサイト(http://www.oracle.com/technology/documentation/jdev.html)を参照してください。

Fusion Webアプリケーションのデプロイは、標準的なJava EEアプリケーションのデプロイとは多少異なります。ADF Facesコンポーネントを含むJSFアプリケーションには、次の追加デプロイ要件があります。

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

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

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

8.1.2 スタンドアロン・アプリケーション・サーバー用のアプリケーションの開発

通常、アプリケーションのテストと開発は、統合WebLogic Serverでアプリケーションを実行することで行います。その後、アプリケーションをスタンドアロンのOracle WebLogic Serverに開発モードでデプロイして本番環境を厳密にシミュレートし、アプリケーションのテストをさらに実施することができます。

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

  • ターゲット・アプリケーション・サーバーへの接続を作成

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

  • デプロイメント・ディスクリプタを作成(必要な場合)

  • application.xmlweb.xmlを更新してOracle WebLogic Serverとの互換性を確保(必要な場合)

  • web.xmlでアプリケーションをReal User Experience Insight(RUEI)に対して有効化(希望する場合)

  • アプリケーションレベルのセキュリティ・ポリシー・データをドメインレベルのセキュリティ・ポリシー・ストアに移行

  • Oracle Single Sign-On(Oracle SSO)を使用してWebアプリケーションを実行する場合は、ドメインのjps-config.xmlファイルでOracle SSOのサービスおよびプロパティを構成

Oracle WebLogic Serverインスタンスがすでにインストールされている必要があります。まだインストールされていない場合は、Oracle 11g InstallerまたはOracle Fusion Middleware 11g Application Developer Installerを使用してインストールできます。

また、次の作業を行って、ADFアプリケーションのデプロイに向けてOracle WebLogic Serverを準備する必要もあります。

  • Oracle WebLogic Serverインストール先にADFランタイムをインストール:

    • Oracle 11g Installer for JDeveloperを使用して、Oracle WebLogic ServerをJDeveloperとともにインストールした場合、ADFランタイムはすでにインストールされています。

    • ADFランタイムがインストールされていない場合に、Oracle Enterprise Managerを使用してスタンドアロンのADFアプリケーション(Oracle SOA SuiteやOracle WebCenterのコンポーネントを使用しないアプリケーション)を管理するには、Oracle Fusion Middleware 11g Application Developer Installerを使用します。このインストーラでは、必要なOracle Enterprise ManagerコンポーネントがOracle WebLogicのインストール先にインストールされます。

    • ADFランタイムがインストールされておらず、Enterprise Managerをインストールする必要がない場合は、Oracle 11g Installer for JDeveloperを使用します。

  • ADFランタイムを使用して、Oracle WebLogic ServerドメインをADF互換に拡張

  • 必要に応じて、Oracle WebLogic Server資格証明ストアの上書きを設定(-Djps.app.credential.overwrite.allowed=true設定)

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

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

  • JDeveloperを使用する作業:

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

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

  • Enterprise Manager、WLSTスクリプト、またはOracle WebLogic Server管理コンソールを使用して、JDeveloperで作成したEARファイルをデプロイします。詳細は、Oracle Fusion Middleware Oracle Application Development Frameworkの管理者ガイドを参照してください。

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

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

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

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


注意:

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

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

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

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

JDeveloperには統合WebLogic Serverへのデフォルト接続があります。アプリケーションを実行するための接続を作成する必要はありません。統合WebLogic Serverへのアプリケーション・サーバー接続を手動で作成する場合は、8.3.1項「ターゲット・アプリケーション・サーバーへの接続の作成方法」の説明に従って接続を作成します。その際、ステップ2で「スタンドアロン・サーバー」ではなく、「統合サーバー」を選択します。

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

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

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

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

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

8.2.2 統合WebLogic ServerへのMARデプロイメント・プロファイルのデプロイ方法

アプリケーションが統合WebLogic Serverで実行されている場合、MARプロファイルそのものはリポジトリにデプロイされませんが、MARに含まれるメタデータ情報を反映した模擬MDSリポジトリがアプリケーション用に構成されます。このメタデータ情報はシミュレートされ、ソース・コントロール内のこの場所を基準にアプリケーションが実行されます。

デフォルトでは、ADFビューとADFモデルのカスタマイズ内容のみがMARに組み込まれます。Java EEアプリケーションのカスタマイズ内容が他のディレクトリに存在する場合は、それらのディレクトリを組み込んだカスタムMARプロファイルを作成する必要があります。

アプリケーションによって作成されたカスタマイズ内容やドキュメントのうち、他のMDSリポジトリに格納するよう構成されていないものは、この模擬MDSリポジトリのディレクトリに書き込まれます。たとえば、オブジェクトをカスタマイズした場合、その内容は模擬MDSリポジトリに書き込まれます。新しいメタデータ・オブジェクトを作成するコードを実行した場合、この新しいメタデータ・オブジェクトも模擬MDSリポジトリの同じ場所に書き込まれます。このディレクトリは、デフォルトの場所(ORACLE_HOME\jdeveloper\systemXX.XX\o.mds.dt\adrs\Application\AutoGeneratedMar\mds_adrs_writedir)をそのまま使用することも、別のディレクトリに設定することも可能です。アプリケーションが複数回実行される間、このディレクトリをずっと保持するか、それとも各実行の前に削除するかも選択できます。

ワークスペースに異なるワーキング・セットがある場合、ワーキング・セットとその依存オブジェクトで定義されたプロジェクトのメタデータのみがMARに組み込まれます。アプリケーション・ナビゲータでプロジェクトを右クリックして「プロジェクト・プロパティ」を選択し、「依存性」を選択すると、プロジェクトの依存性の表示または変更が行えます。たとえば、アプリケーションに複数のプロジェクトがあるが、workingsetAviewcontroller2およびviewcontroller5として定義され、viewcontroller5modelproject1に依存しているとします。workingsetAを実行またはデバッグすると、viewcontroller2viewcontroller5およびmodelproject1のメタデータのみがデプロイ用のMARに組み込まれます。

MARプロファイルを用意しておく必要があります。これは、JDeveloperで自動的に生成されたものでも、ユーザーが手動で生成したものでもかまいません。

MARプロファイルを統合WebLogic Serverにデプロイする手順:

  1. アプリケーション・ナビゲータで、アプリケーションを右クリックし、「アプリケーションのプロパティ」を選択します。

  2. 「アプリケーションのプロパティ」ダイアログで、「実行」を展開して「MDS」を選択します。

  3. 「MDSの実行」ページで次の作業を行います。

    • 「MARプロファイル」ドロップダウン・リストからMARプロファイルを選択します。

    • 模擬MDSリポジトリの場所をカスタマイズする場合は、「オーバーライド場所」にディレクトリ・パスを入力します。

    • 「ディレクトリ・コンテンツ」オプションを選択します。アプリケーションが複数回実行される間、カスタマイズ内容を維持するか、それとも各実行の前にカスタマイズ内容を削除するかを選択できます。

    「MARプロファイル」ドロップダウン・リストからMARプロファイルを選択します。図8-1は、MARプロファイルとして「Demometadata1」を選択したところを示しています。

    図8-1 MDS実行オプションの設定

    「アプリケーションのプロパティ」でのMDS実行オプション

8.3 アプリケーションの準備

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

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

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

JDeveloperアプリケーション・サーバー接続を介して、Oracle WebLogic Serverにアプリケーションをデプロイすることができます。アプリケーションにMDSを使用したカスタマイズが加えられている場合は、MDSリポジトリをOracle WebLogic Serverドメインに登録してください。

MDSの登録の詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

アプリケーション・サーバーへの接続を作成する手順:

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

    次のいずれかを実行します。

    • アプリケーション・サーバー・ナビゲータで、「アプリケーション・サーバー」を右クリックし、「アプリケーション・サーバー接続の作成」を選択します。

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

    • リソース・パレットで、「新規」「接続の作成」→「アプリケーション・サーバー」を選択します。

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

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

  4. 「接続タイプ」ドロップダウン・リストで、「WebLogic」を選択して、Oracle WebLogic Serverへの接続を作成します。

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

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

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

  8. 「コンフィギュレーション」ページで、Oracle WebLogic Serverのホスト名を入力します。

    Oracle WebLogicホスト名は、アプリケーション(.jar、.war、.ear)がデプロイされるTCP/IP DNSを含む、WebLogic Serverインスタンスの名前です。

  9. 「ポート」フィールドに、アプリケーション(.jar,.war,.ear)がデプロイされるOracle WebLogic Serverインスタンスのポート番号を入力します。

    ポートを指定しない場合、ポート番号はデフォルトの7001になります。

  10. 「SSLポート」フィールドに、アプリケーション(.jar、.war、.ear)がデプロイされるOracle WebLogic ServerインスタンスのSSLポート番号を入力します。

    SSLポートの指定はオプションです。デプロイメント時に確実にセキュア接続にする場合にのみ必要です。

    ポートを指定しない場合、SSLポート番号はデフォルトの7002になります。

  11. SSLポートを使用してOracle WebLogic Serverインスタンスに接続するために、「常にSSLを使用」を選択します。

  12. オプションで、Oracle WebLogic Serverが管理権限のないサーバー・ノードを名前で識別するように構成されている場合のみ、WebLogic Serverドメインを入力します。

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

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

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

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

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

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

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

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

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

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

アプリケーションにデプロイするWebビュー・コントローラ・プロジェクトごとに、WARデプロイメント・プロファイルを作成する必要があります。シード・カスタマイズをパッケージ化する場合や、ベース・メタデータをMDSリポジトリに保存する場合は、アプリケーションレベルのメタデータ・アーカイブ(MAR)・デプロイメント・プロファイルも必要になります。シード・カスタマイズの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』のMDSによるアプリケーションのカスタマイズに関する項を参照してください。アプリケーションにカスタマイズ・クラスがある場合は、そのクラスを格納するJARファイルが必要です。EARファイルの作成時に、そのJARファイルを追加する必要があります。EJBを使用する場合は、EJB JARプロファイルが必要です。さらに、アプリケーションレベルのEARデプロイメント・プロファイルも必要です。WARプロファイルやMARプロファイル、カスタマイズ・クラスのJARファイルなど、その中に組み込むプロジェクトをリストから選択する必要があります。アプリケーションがデプロイされるとき、EARファイルは、デプロイメント・プロファイルで選択されたすべてのプロジェクトを組み込みます。

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

8.3.2.1 JARへのカスタマイズ・クラスの追加

アプリケーションにカスタマイズ・クラスがある場合は、そのカスタマイズ・クラスを格納するJARを作成します。このJARは、EARを作成する際にEARアセンブリに追加できます。

事前作業:

プロジェクトにカスタマイズ・クラスがあることを確認します。アプリケーションにカスタマイズ・クラスがない場合、この手順を実行する必要はありません。

JARにカスタマイズ・クラスを追加する手順:

  1. アプリケーション・ナビゲータで、カスタマイズ・クラスのJARを作成するデータ・モデル・プロジェクトを右クリックし、「新規」を選択します。

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

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

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

  4. 「JARデプロイメント・プロファイルのプロパティの編集」ダイアログで、「JARオプション」を選択します。

  5. JARファイルの場所を入力します。

  6. 「ファイル・グループ」→「プロジェクトの出力」→「フィルタ」を展開します。

  7. 「ファイル」タブで、JARファイルに追加するカスタマイズ・クラスを選択します。customization.propertiesファイルを使用する場合は、このファイルがJARファイルと同じクラス・ローダーにあることが必要です。customization.propertiesファイルを選択して、カスタマイズ・クラスとともに同じJARにパッケージ化することができます。

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

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

  9. アプリケーション・ナビゲータで、JARデプロイメント・プロファイルを含むプロジェクトを右クリックし、「デプロイ」→「deployment profile」→「JARファイルへ」を選択します。

8.3.2.2 WARデプロイメント・プロファイルの作成

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

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

  1. アプリケーション・ナビゲータで、デプロイするWebプロジェクトを右クリックし、「新規」を選択します。

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

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

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

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

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

    アプリケーションにカスタマイズ・クラスがある場合は、WARからではなく、EARレベルのアプリケーション・クラス・ローダーからロードされるようにカスタマイズ・クラスを構成する必要があります。このカスタマイズ・クラスは後でEARに追加します。カスタマイズ・クラスがWARにも重複して存在するのを避けるため、「ファイル・グループ」→「WEB-INF/classes」→「フィルタ」を選択し、WARのカスタマイズ・クラスがあればすべて選択解除してください。customization.propertiesファイルを使用する場合は、それも選択解除します。


    注意:

    Java EE Webコンテキストのルート設定を変更することもできます(左側のペインで「一般」を選択)。

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

    JAZNを使用した認証でカスタムのJAAS LoginModuleを使用している場合は、コンテキスト・ルート名によって、JAAS LoginModuleの検索に使用されるアプリケーション名も定義されます。


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

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

  7. デプロイするすべてのWebプロジェクトに対して、ステップ1〜7を繰り返します。

8.3.2.3 MARデプロイメント・プロファイルの作成

MDSリポジトリに保存するシード・カスタマイズやベース・メタデータがある場合は、MARデプロイメント・プロファイルを作成する必要があります。

adf-config.xmlファイルの<mds-config>におけるMARコンテンツのネームスペース構成は、「MARデプロイメント・プロファイルのプロパティ」ダイアログでの選択内容に基づいて生成されます。

まれなことですが、1つのエンタープライズ・アプリケーション(1つのEARにパッケージ化)に複数のWebアプリケーション・プロジェクト(複数のWARにパッケージ化)が含まれている場合があります。しかし、こうしたWebアプリケーションのメタデータはすべて、単一のメタデータ・アーカイブ(MAR)にパッケージ化されます。個々のWebアプリケーションのメタデータには、グローバル(すべてのWebアプリケーションで使用可能)なものと、特定のWebアプリケーション専用のローカルなものがあります。グローバル・スコープを持つメタデータの名前が競合するのを避けるため、すべてのメタデータ・オブジェクトおよび要素に、エンタープライズ・アプリケーションを構成するWebアプリケーション・プロジェクト全体で一意の名前を付けてください。名前の競合を避け、特定のWebアプリケーションのメタデータをそのアプリケーション専用のローカル・メタデータのまま保持するには、Webアプリケーション・プロジェクトに対してweb-app-rootを定義します。web-app-rootは、Webアプリケーション・プロジェクトのadf-settings.xmlファイルの要素です。adf-settings.xmlファイルは、Webプロジェクトのpublic_htmlディレクトリの下にあるMETA-INFディレクトリに保存してください。例8-1に、サンプルのadf-settings.xmlファイルの内容を示します。

例8-1 adf-settings.xmlファイルのweb-app-root要素

<?xml version="1.0" encoding="UTF-8" ?>
 <adf-settings xmlns="http://xmlns.oracle.com/adf/settings"
 xmlns:wap="http://xmlns.oracle.com/adf/share/http/config">
    <wap:adf-web-config xmlns="http://xmlns.oracle.com/adf/share/http/config">
        <web-app-root rootName="order"/>
    </wap:adf-web-config>
</adf-settings>

この例では、adf-settings.xmlファイルに、rootNameorderとして定義するweb-app-root要素があります。エンタープライズ・アプリケーションにWebアプリケーション・プロジェクトが1つしかない場合、web-app-rootの定義は不要です。エンタープライズ・アプリケーションにWebアプリケーション・プロジェクトが複数ある場合は、1つを除くすべてのWebアプリケーションに対してweb-app-rootを指定する必要があります。これを行わないと、デプロイは失敗します。たとえば、web-application1web-application2およびweb-application3がある場合、名前の競合を防ぐには、これらのWebアプリケーション・プロジェクトのうち2つに対してweb-app-rootを定義する必要があります。

「プロジェクト・プロパティ」ダイアログの「ADFビュー」ページで「ユーザー・カスタマイズの有効化」オプションと「MDSを使用したセッション間」オプションを選択した場合、またはadf-config.xmlファイルにデプロイメント・ターゲット・ディレクトリを明示的に指定した場合は、自動生成MARが作成されます。

デフォルトでは、ADFビューとADFモデルのカスタマイズ内容のみがMARに組み込まれます。Java EEアプリケーションのカスタマイズ内容が他のディレクトリに存在する場合は、それらのディレクトリを組み込んだカスタムMARプロファイルを作成する必要があります。

事前作業:

MARデプロイメント・プロファイルを使用してメタデータをデプロイするために、カスタマイズ要件を考慮したMDSリポジトリを作成します。

MARデプロイメント・プロファイルを作成する手順:

  1. アプリケーション・ナビゲータで、アプリケーションを右クリックし、「新規」を選択します。

    カスタマイズ内容を組み込む場合は、MARプロファイルを作成します。

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

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

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

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

    図8-2に、サンプルの「ユーザー・メタデータ」ディレクトリ・ツリーを示します。

    図8-2 MARデプロイメント・プロファイルの項目の選択

    MARデプロイメント・プロファイルのダイアログ

    次の重要な点に注意してください。

    • すべてのカスタマイズ内容を組み込む場合は、目的のディレクトリを含むファイル・グループを作成するだけで済みます。

    • ADFモデルとADFビュー以外のファイルを組み込む場合は、目的のディレクトリを含む「ユーザー・メタデータ」の下に新しいファイル・グループを作成し、「ディレクトリ」ページで必要なコンテンツを明示的に選択します。

    • ADFモデルとADFビューのディレクトリはデフォルトで追加されます。ADFモデルとADFビューのカスタマイズ内容をMARにパッケージ化するために必要な作業はこれだけです。ADFビューのコンテンツは「HTMLルート・ディレクトリ」に追加され、ADFモデルのコンテンツは「ユーザー・メタデータ」に追加されます。アプリケーションにEJBプロジェクトなどのその他のカスタマイズ・ディレクトリがある場合は、それらのディレクトリを追加する必要があります。

    • MDSリポジトリにベース・メタデータを組み込む場合は、対象となるディレクトリをダイアログで明示的に選択する必要があります。

      MARに組み込むベース・ドキュメントを選択する際に、個々のパッケージも選択します。パッケージを1つ選択すると、そのパッケージの下にあるすべてのドキュメント(サブパッケージを含む)が使用されます。パッケージを選択したときに、その下の個々の項目を選択解除することはできません。

    • プロジェクトの依存ADFライブラリJARにシード・カスタマイズが含まれている場合、そのシード・カスタマイズはMARのパッケージ化中にMARに自動的に追加されます。MARプロファイルには表示されません。

    • ADFライブラリのカスタマイズ内容が使用側プロジェクトのコンテキストで作成された場合、そのカスタマイズ内容はMARプロファイルのダイアログにデフォルトで表示されます。

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

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

8.3.2.4 EJB JARデプロイメント・プロファイルの作成

モデル・プロジェクトでEJBモジュールを使用する場合は、EJB JARデプロイメント・プロファイルを作成する必要があります。

事前作業:

EJBモジュールを使用したモデル・プロジェクトを作成します。

アプリケーションのEJB JARデプロイメント・プロファイルを作成する手順:

  1. アプリケーション・ナビゲータで、デプロイするWebプロジェクトを右クリックし、「新規」を選択します。

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

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

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

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

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

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

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

EARファイルには、アプリケーション・サーバーでアプリケーションを実行するために必要なアプリケーション・アーティファクトがすべて含まれています。EARファイルの詳細は、8.5.4項「EARファイルとパッケージ化について」を参照してください。

事前作業:

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

  1. アプリケーション・ナビゲータで、アプリケーションを右クリックし、「新規」を選択します。

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

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

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

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

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

    次の手順を必ず実行してください。

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

    • 「プラットフォーム」を選択し、デフォルト・プラットフォームとして「WebLogic」を選択した後、「ターゲット接続」ドロップダウン・リストから、ターゲット・アプリケーション接続を選択します。

    アプリケーションにカスタマイズ・クラスがある場合は、そのクラスがEARレベルのアプリケーション・クラス・ローダーからロードされるように構成する必要があります。「アプリケーション・アセンブリ」で、カスタマイズ・クラスを含むJARを選択して、「EARのパス」「lib」に設定します。このJARは、8.3.2.1項「JARへのカスタマイズ・クラスの追加」の説明に従って作成したものです。カスタマイズ・クラスを含むJARファイルは、EARファイルのlibディレクトリに追加されます。


    注意:

    JAZNを使用した認証でカスタムのJAAS LoginModuleを使用している場合は、コンテキスト・ルート名によって、JAAS LoginModuleの検索に使用されるアプリケーション名も定義されます。

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

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

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

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

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

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

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

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

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

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

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

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

ターゲットのOracle WebLogicアプリケーション・サーバー・インスタンスに固有のデプロイメント・ディスクリプタを指定できます。

標準のJava EEデプロイメント・ディスクリプタ(application.xmlおよびweb.xmlなど)に加えて、ターゲット・アプリケーション・サーバーに固有のデプロイメント・ディスクリプタも使用できます。たとえば、Oracle WebLogic Serverにデプロイする場合、weblogic.xmlweblogic-application.xmlおよびweblogic-ejb-jar.xmlを使用できます。

アプリケーションのEARファイルに、adf.oracle.domainへの参照を含むweblogic-application.xmlファイルが組み込まれていること、そしてデプロイ作業とアンデプロイ作業の間にアプリケーション・リソースをクリーンアップするためのADFApplicationLifecycleListenerが組み込まれていることを確認してください。例8-2に、サンプルのweblogic-application.xmlファイルを示します。

例8-2 サンプルのweblogic-application.xml

<weblogic-application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-application.xsd"
 xmlns="http://www.bea.com/ns/weblogic/weblogic-application">
  <listener>
    <listener-class>oracle.adf.share.weblogic.listeners.
          ADFApplicationLifecycleListener</listener-class>
  </listener>
  <listener>
    <listener-class>oracle.mds.lcm.weblogic.WLLifecycleListener</listener-class>
  </listener>
  <library-ref>
    <library-name>adf.oracle.domain</library-name>
       <implementation-version>
       </implementation-version>
    </library-ref>
</weblogic-application>

Webサービスをデプロイする場合は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』のOracle WebLogic ServerへのWebサービスのデプロイ方法に関する項の説明に従って、weblogic-application.xmlファイルとweb.xmlファイルを変更する必要が生じることがあります。

アプリケーションに対してReal User Experience Insight(RUEI)による監視を行えるようにするには、8.3.3.5項「Real User Experience Insightに対するアプリケーションの有効化」の説明に従って、web.xmlファイルにパラメータを追加する必要があります。

デプロイ時には、アプリケーションとともにEARファイルにデプロイされるweblogic-application.xmlファイルに、アプリケーションのセキュリティ・プロパティが書き込まれます。

Oracle WebLogic ServerはJava EE 1.5上で動作するため、application.xmlファイルとweb.xmlファイルを変更してサーバーと互換性を持たせることが必要になる場合があります。

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

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

事前作業:

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

デプロイメント・ディスクリプタを作成する手順:

  1. アプリケーション・ナビゲータで、ディスクリプタを作成するプロジェクトを右クリックし、「新規」を選択します。

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

    目的の項目が見つからない場合は、正しいプロジェクトが選択されていることを確認してから「すべてのテクノロジ」タブを選択するか、「検索」フィールドを使用してディスクリプタを検索します。項目が有効になっていない場合は、そのタイプのディスクリプタがプロジェクトにまだ存在しないことを確認します。1つのプロジェクトで使用できるディスクリプタのインスタンスは1つのみです。

    デプロイメント・ディスクリプタの作成ウィザードが起動し、選択したデプロイメント・ディスクリプタのタイプに応じて、概要エディタまたはソース・エディタでファイルが開きます。


注意:

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

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


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

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

デプロイメント・ディスクリプタのプロパティを表示または変更する手順:

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

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

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

8.3.3.3 WebLogic互換のapplication.xmlファイルの構成

Java EE 1.5に準拠するようにapplication.xmlファイルを構成することが必要な場合があります。


注意:

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

application.xmlファイルを構成する手順:

  1. アプリケーション・ナビゲータで、プロジェクトを右クリックし、「新規」を選択します。

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

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

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

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

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

8.3.3.4 WebLogic互換のweb.xmlファイルの構成

Java EE 1.5(Servlet 2.5およびJSP 1.2に対応)に準拠するようにweb.xmlファイルを構成することが必要な場合があります。


注意:

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

web.xmlファイルを構成する手順:

  1. アプリケーション・ナビゲータで、プロジェクトを右クリックし、「新規」を選択します。

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

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

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

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

8.3.3.5 Real User Experience Insightに対するアプリケーションの有効化

Real User Experience Insight(RUEI)は、ネットワークで要求され、生成される実際のユーザー・トラフィックをレポートするためのWebベースのユーティリティです。ネットワーク・インフラストラクチャの最も重要なポイントで、ページやトランザクションのレスポンス時間を測定します。セッション診断情報を使用すれば、根本原因分析を実行できます。

RUEIでは、実際のユーザー体験に基づいてサーバーおよびネットワーク時間を表示し、キー・パフォーマンス・インディケータ(KPI)とサービス・レベル合意(SLA)を監視し、定義済のターゲットに違反するインシデントが発生した場合にアラート通知をトリガーすることが可能です。ページ・コンテンツ、サイト・エラー、およびトランザクションの機能要件に関するチェックを実施できます。この情報を使用することで、業務面、技術面から運用を検証できます。RUEIで認識されるすべての項目の可用性、スループットおよびトラフィックに関して、カスタム・アラートを設定することもできます。

RUEIの詳細は、Oracle Real User Experience Insightのユーザーズ・ガイドhttp://download.oracle.com/docs/cd/E16339_01/doc.60/e16359/toc.htm)を参照してください。

例8-3に示すように、web.xmlファイルにcontext-paramタグを追加し、アプリケーションをRUEIに対して有効にする必要があります。

例8-3 web.xmlでのアプリケーションのRUEI監視の有効化

<context-param>
  <description>This parameter notifies ADF Faces that the 
               ExecutionContextProvider service provider is enabled.
               When enabled, this will start monitoring and aggregating
               user activity information for the client initiated
               requests. By default this param is not set or is false.
  </description>
  <param-name>
         oracle.adf.view.faces.context.ENABLE_ADF_EXECUTION_CONTEXT_PROVIDER
  </param-name>
  <param-value>true</param-value>
</context-param>

8.3.4 ADF Securityを有効にしたアプリケーションのデプロイ方法

統合WebLogic Serverを使用してJDeveloperでアプリケーションを開発する場合、アプリケーション・セキュリティ・デプロイメント・プロパティがデフォルトで構成されます。つまり、開発目的で再デプロイするたびに、アプリケーションとセキュリティの資格証明およびポリシーが上書きされることになります。このデフォルト動作は、「アプリケーションのプロパティ」ダイアログで変更できます。

開発環境では、サーバーが開発モードに設定されている場合にのみ、アプリケーションレベルの資格証明、アイデンティティおよびポリシーがリモートWebLogic Serverインスタンスへ自動的に移行されます。統合WebLogic Serverはデフォルトで開発モードに設定されています。Oracle WebLogic Serverドメインの作成時に、Oracle Fusion Middleware構成ウィザードを使用して、リモートWebLogic Serverを開発モードに設定できます。Oracle WebLogic Serverドメインの構成の詳細は、『Oracle Fusion Middleware構成ウィザードを使用したドメインの作成』を参照してください。

本番モードでは、アプリケーションレベルのセキュリティ資格証明はWebLogic Server設定に移行されません。本番環境では一般に、管理者はEnterprise ManagerまたはWLSTスクリプトを使用してアプリケーション(セキュリティ要件を含む)をデプロイします。

アプリケーションをWebLogic Serverにデプロイすると、cwallet.ssojps-config.xmljazn-data.xmlの各ファイルに含まれる資格証明とポリシーは、WebLogic Serverのドメインレベルの資格証明ストアおよびポリシー・ストアを上書きするか、これらとマージされます。上書きとマージのどちらが行われるかは、ドメインレベル・ストアがOVERWRITEモードかMERGEモードかによって決まります。本番モードのWebLogic Serverでは、セキュリティ・リスクを回避するため、MERGEモードしか使用できません。開発モードのWebLogic Serverでは、モードをOVERWRITEに設定して、ユーザー名とパスワードをテストできます。モードを設定するには、setDomainEnv.cmdまたはsetDomainEnv.shを実行します。その際、コマンド(通常はORACLE_HOME/user_projects/domains/MyDomain/binにあります)に次のオプションを追加します。

setDomainEnv.cmdの場合:

set EXTRA_JAVA_PROPERTIES=-Djps.app.credential.overwrite.allowed=true 
    %EXTRA_JAVA_PROPERTIES%

setDomainEnv.shの場合:

EXTRA_JAVA_PROPERTIES="-Djps.app.credential.overwrite.allowed=true
     ${EXTRA_JAVA_PROPERTIES}"
export EXTRA_JAVA_PROPERTIES

管理サーバーがすでに稼働している場合、この設定を有効にするにはサーバーを再起動する必要があります。

WebLogic Serverが本番モードかどうかをチェックするには、Oracle WebLogic Server管理コンソールを使用するか、WebLogic Serverのconfig.xmlファイルで次の行を確認します。

<production-mode-enabled>true</production-mode-enabled>

デフォルトでは、アプリケーションの資格証明、アイデンティティおよびポリシーはOVERWRITEモードに設定されます。つまり、「アプリケーションのプロパティ」ダイアログの「デプロイメント」ページで、「アプリケーション・ポリシー」「資格証明」「ユーザーとグループ」の各オプションがデフォルトで選択されます。ただし、アプリケーションの資格証明、アイデンティティおよびポリシーが移行されるのは、ターゲットとなるWebLogic Serverインスタンスが-Djps.app.credential.overwrite.allowed=trueの指定によって開発モードに設定されている場合のみです。

アプリケーションを本番環境にデプロイする準備ができたら、jazn-data.xmlファイルからアイデンティティを削除するか、「アプリケーションのプロパティ」ダイアログで「ユーザーとグループ」を選択解除して、アイデンティティの移行を無効にしてください。アプリケーションの資格証明は、JDeveloperの外部で、手動で移行する必要があります。

Enterprise Manager Fusion Middleware ControlまたはWLSTスクリプトを使用して、本番環境での資格証明を設定する方法の詳細は、Oracle Fusion Middleware Oracle Application Development Frameworkの管理者ガイドを参照してください。

アプリケーションの資格証明とその他のjazn-dataユーザー資格証明の移行の詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』を参照してください。

8.3.4.1 JDBCデータ・ソースを使用するアプリケーション

アプリケーションがパスワード・インダイレクション機能を持つアプリケーションレベルのJDBCデータ・ソースを使用して、データベース接続を行う場合、WebLogic Serverで資格証明マップを作成し、データベース接続を有効にする必要があります。詳細は、8.4.3項「Oracle WebLogic Server用のJDBCデータ・ソースの作成方法」を参照してください。

8.3.4.2 Oracle Single Sign-On(SSO)を使用して実行するアプリケーション

Oracle ADF Securityを有効にしたWebアプリケーションを、Oracle WebLogic Serverにデプロイして実行するには、ターゲット・サーバーの管理者がOracle Access Manager(OAM)セキュリティ・プロバイダのドメインレベルのjps-config.xmlファイルを構成する必要があります。この構成タスクを助けるため、JDeveloperにはOracle WebLogic Scripting Tool(WLST)スクリプトが付属しています。この構成スクリプト(コマンドaddOAMSSOProvider(loginuri, logouturi, autologinuri)を使用)の実行の詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』で、ADF Security、OAM SSOおよびOPSS SSOを使用したWebアプリケーションに対してOracle WebLogic Serverを構成する手順を参照してください。

構成スクリプトを実行することで、ADF Securityフレームワークが確実にOAMサービス・プロバイダに従って、ObSSOCookieトークンをクリアするようになります。OAMでは、このトークンを使用して認証済ユーザーのアイデンティティが保存されるため、ログアウト中にトークンがクリアされないかぎり、ユーザーはログアウトできません。

システム管理者がターゲット・サーバーに対してスクリプトを実行すると、ドメインのjps-config.xmlファイルに、ADF Security固有の次のセキュリティ・プロバイダ定義が追加されます。

<propertySet name="props.auth.uri">
    <property name="login.url.FORM" value="/${app.context}/adfAuthentication"/>
    <property name="logout.url" value=""/>
</propertySet>

また、SSOに必要な認証タイプはCLIENT-CERTです。デプロイ済アプリケーションのweb.xml認証構成に、<auth-method>要素を次のいずれかのCLIENT-CERTタイプとして指定する必要があります。

FORMタイプの認証方式の場合、次のような要素を指定します。

<login-config>
  <auth-method>CLIENT-CERT,FORM</auth-method>
  <realm-name>myrealm</realm-name>
  <form-login-config>
     <form-login-page>/login.html</form-login-page>
     <form-error-page>/error.html</form-error-page>
  </form-login-config>
</login-config>

BASICタイプの認証方式の場合、次のような要素を指定します。

<login-config>
   <auth-method>CLIENT-CERT,BASIC</auth-method>
   <realm-name>myrealm</realm-name>
</login-config>

web.xmlファイルは、Webアプリケーションをデプロイする前でも後でも構成可能です。シングル・サインオンの認証方式を設定する方法の詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』を参照してください。

8.3.5 クラスタ環境でのメモリー・スコープのレプリケート方法

クラスタ環境での実行を想定したアプリケーションをデプロイする場合、存続期間が1つのリクエストより長いマネージドBeanがすべてシリアライズ可能であること、そしてADFフレームワークがADFスコープ(ビュー・スコープとページ・フロー・スコープ)に格納されるマネージドBeanへの変更を認識することを確認する必要があります。

詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』のサーバー/クラスタ環境でのマネージドBeanメモリー・スコープの設定方法に関する項を参照してください。

8.3.6 アプリケーションをADF MBeanに対して有効化する方法

ADFアプリケーションでは、多くのXMLファイルを使用して構成情報が設定されています。こうした構成ファイルの一部には、アプリケーションとともにデプロイされ、構成ファイルと同じ役割を果すADF MBeanがあります。アプリケーションがデプロイされたら、Enterprise Manager Fusion Middleware ControlのMBeanブラウザを使用してADF MBeanにアクセスし、構成プロパティを変更することができます。

ADF MBeanを有効にするには、web.xmlファイルに登録する必要があります。例8-4に、接続と構成のリスナー・エントリを含むweb.xmlファイルを示します。

例8-4 web.xmlファイルでのADF MBeanの有効化

<listener>
   <listener-class>
        oracle.adf.mbean.share.connection.ADFConnectionLifeCycleCallBack
   </listener-class>
</listener>
<listener>
   <listener-class>
        oracle.adf.mbean.share.config.ADFConfigLifeCycleCallBack</listener-class>
</listener>

また、ADFConnection MBeanとADFConfig MBeanを使用する場合は、MDSリポジトリを使用するようにアプリケーションを構成する必要があります。ファイルベースのMDSを使用する場合のadf-config.xmlファイルのMDS構成エントリを例8-5に示します。MDSの構成の詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

例8-5 adf-config.xmlファイルのMDS構成エントリ

<adf-mds-config xmlns="http://xmlns.oracle.com/adf/mds/config">
   <mds-config xmlns="http://xmlns.oracle.com/mds/config" version="11.1.1.000">
      <persistence-config>
         <metadata-store-usages>
            <metadata-store-usage 
                default-cust-store="true" deploy-target="true" id="myFileStore">
                  <metadata-store name="myReposName"
                       class-name=
                          "oracle.mds.persistence.stores.file.FileMetadataStore">
                       <property name="metadata-path" value="C:\Temp\"/>
                       <property name="partition-name" value="myAppName"/>
                  </metadata-store>
            </metadata-store-usage>
         </metadata-store-usages>
      </persistence-config>
   </mds-config>
</adf-mds-config>

本番環境では、データベースを使用するMDSリポジトリが必要です。JDeveloper、Enterprise Manager Fusion Middleware Control、WLSTコマンドのいずれかを使用して、ファイルベースのリポジトリからデータベースのMDSリポジトリに切り替えることができます。

また、複数のアプリケーションが同じMDS構成を共有している場合は、adf-config.xmlファイルでadf:adf-properties-childプロパティを定義して、各アプリケーションに異なるカスタマイズ・レイヤーを持たせることができます。このエントリは、アプリケーションの作成時に自動的に生成されます。adf-config.xmlファイルにこのエントリがない場合は、例8-6に示すようなコードを使用してファイルに追加できます。

例8-6 adf-config.xmlファイルへのMDSパーティション・コードの追加

<adf:adf-properties-child xmlns="http://xmlns.oracle.com/adf/config/properties">
     <adf-property name="adfAppUID" value="Application3-4434"/>
     <adf-property name="partition_customizations_by_application_id"
            value="true"/>
</adf:adf-properties-child> 

value属性は、JDeveloperで自動的に生成するか、アプリケーションのデプロイ先となるサーバー・ファーム内で一意の識別子に設定します。この値は、adfAppUIDプロパティのvalue属性に設定できます。

adf-property nameadfAppUidに設定した場合は、対応するvalueプロパティをアプリケーションの名前に設定する必要があります。デフォルトでは、valueプロパティはアプリケーションのパッケージ名を使用して生成されます。パッケージ名を指定していない場合、valueプロパティはワークスペース名と4桁の乱数を使用して生成されます。

ADF MBeanを使用したOracle ADFアプリケーションの構成の詳細は、Oracle Fusion Middleware Oracle Application Development Frameworkの管理者ガイドを参照してください。

8.4 ターゲット環境の準備

Oracle ADF Java EEアプリケーションを実行するには、Oracle WebLogic ServerをOracle ADFランタイムとともにインストールする必要があります。ADFランタイムは、WebLogic Serverの新規インストール時に組み込むことも、既存のWebLogic Serverのインストール先にインストールすることもできます。

WebLogic ServerにADFランタイムをインストールしたら、新しいWebLogicドメインを作成するか、既存のWebLogic ServerドメインをOracle ADF用に拡張することができます。

管理対象サーバーが管理サーバーとは異なるホストに位置している場合、追加の構成タスクを実行して、管理対象サーバーがADFアプリケーションをホストできるようにする必要があります。

EJBやBeanデータ・コントロールを使用するADFアプリケーションでは、データへのアクセスにJDBCデータ・ソースが使用されます。Oracle WebLogic Server管理コンソールを使用すれば、WebLogic Serverをデータ・ソースに対して構成できます。

8.4.1 WebLogic Serverインストール先へのADFランタイムのインストール方法

Oracle WebLogic Serverは、Oracle ADFアプリケーションを実行するために、ADFランタイムを必要とします。

JDeveloperを使用して、統合WebLogic Serverでアプリケーションを実行する場合、ADFランタイムをインストールする必要はありません。

ADFランタイムは、次のインストーラを使用してインストールできます。

  • Oracle 11g Installer for JDeveloper: JDeveloper、ADFランタイムおよびOracle WebLogic Serverがインストールされます。Oracle Enterprise Managerはインストールされません。

  • Oracle Fusion Middleware 11g Application Developer Installer: ADFランタイムとOracle Enterprise Managerがインストールされます。Oracle Enterprise Managerを使用してスタンドアロンのADFアプリケーション(Oracle SOA SuiteやOracle WebCenterのコンポーネントを使用しない)を管理する場合は、Oracle Fusion Middleware 11g Application Developer Installerを使用してください。このインストーラを使用するには、Oracle WebLogic Serverがすでにインストールされている必要があります。

Oracle 11g Installer for JDeveloperを使用して、Oracle WebLogic ServerをJDeveloper 11gとともにインストールした場合(またはApplication Development Frameworkランタイム・オプションを選択してインストールした場合)、ADFランタイムはOracle WebLogic Serverインストールの一部としてインストールされます。8.4.2項「Oracle WebLogic Serverドメインの作成および拡張方法」に進んでください。

8.4.1.1 Oracle Fusion Middleware Application Developer Installerを使用して既存のWebLogic Serverのインストール先にADFランタイムをインストール

Oracle Fusion Middleware 11g Application Developer Installerを使用して、ADFランタイムとEnterprise Managerをインストールできます。

事前作業:

  1. Oracle WebLogic Serverをインストールします。Oracle Fusion Middleware 11g Application Developer Installerを入手しておくことも必要です。インストーラは、Oracle Technology Network(OTN)Webサイト(http://www.oracle.com/technology/products/middleware/index.html)からダウンロードできます。

  2. 『Oracle Fusion Middlewareインストレーション・プランニング・ガイド』の説明に従ってインストーラを起動し、インストールを完了します。

  3. ADFランタイムをインストールしたら、8.4.2項「Oracle WebLogic Serverドメインの作成および拡張方法」の説明に従って、Oracle Fusion Middleware構成ウィザードを使用してOracle WebLogic Serverドメインを作成または拡張します。

8.4.1.2 Oracle Installer for JDeveloperを使用して既存のWebLogic Serverのインストール先にADFランタイムをインストール

事前作業:

Oracle 11g Installer for JDeveloperを入手します。インストーラは、Oracle Technology Network(OTN)Webサイト(http://www.oracle.com/technology/software/products/jdev/index.html)からダウンロードできます。

『Oracle Fusion Middleware Oracle JDeveloperインストレーション・ガイド』の説明に従ってインストーラを起動し、インストールを完了します。


注意:

必ず11gのStudio Edition(Java Editionではありません)をダウンロードし、インストールしてください。詳細は、Oracle JDeveloperの「ヘルプ」「バージョン情報」メニュー・オプションから確認できます。

ADFランタイムを既存のWebLogic Serverにインストールする手順:

  1. 『Oracle Fusion Middleware Oracle JDeveloperインストレーション・ガイド』の説明に従って、Oracle 11g Installer for JDeveloperを起動します。

  2. 「ミドルウェア・ホーム・ディレクトリの選択」ページで、「既存のミドルウェア・ホームを使用する」を選択し、Oracle WebLogic Serverインスタンスがあるディレクトリを選択して、「次へ」をクリックします。

  3. 「製品とコンポーネントの選択」ページで、「Application Development Frameworkランタイム」を選択(JDeveloper IDEをインストールしない場合は「JDeveloper Studio」の選択を解除)し、「次へ」をクリックします。

    Oracle WebLogic Server製品とコンポーネントは、グレー表示され選択できません。有効になっており選択できる場合は、正しいOracle WebLogic Serverインストール・ディレクトリを選択したかどうか確認してください。

  4. 『Oracle Fusion Middleware Oracle JDeveloperインストレーション・ガイド』の説明に従います。

  5. インストールが完了したら、「完了」をクリックします。

    8.3.3項「デプロイメント・ディスクリプタの作成および編集方法」の説明に従って、Oracle Fusion Middleware構成ウィザードを使用してOracle WebLogic Serverドメインを作成または拡張します。

8.4.2 Oracle WebLogic Serverドメインの作成および拡張方法

Oracle ADFアプリケーションを使用するには、Oracle WebLogic Serverドメインを作成し、構成する必要があります。ドメインがまだない場合は、作成する必要があります。すでにドメインがある場合は、ドメインを拡張して、Oracle ADFアプリケーションを実行できるようにする必要があります。

管理対象サーバーを使用してアプリケーションを実行する場合、管理対象サーバーの構成が必要になることがあります。Oracle WebLogic Server上での管理対象サーバーの構成の詳細は、『Oracle Fusion Middleware構成ウィザードを使用したドメインの作成』を参照してください。

管理対象サーバーが管理サーバーと同じホストに位置している場合に、Oracle ADF用に管理対象サーバーを設定するには、この項で説明する手順に従います。

管理サーバーとは異なるホストに位置する管理対象サーバーにデプロイするための設定を行う場合は、8.4.2.3項「Oracle ADF用のリモート管理対象サーバーの設定」の説明に従って追加のステップを実行します。

8.4.2.1 Oracle ADF用のOracle WebLogic Serverドメインの作成

Oracle WebLogic Serverドメインがまだ存在しない場合は、作成する必要があります。

新しいOracle WebLogic Serverドメインを作成する手順:

  1. Oracle Fusion Middleware構成ウィザードを起動します。

    • Oracle Installer for JDeveloperを使用した場合は、コマンド・プロンプトからORACLE_HOME/jdeveloper/common/bin/config.cmd(または、プラットフォームによってはconfig.sh)を実行します。

    • Oracle Fusion Middleware Application Developer Installerを使用した場合は、コマンド・プロンプトからWL_HOME/wlserver_10.3/common/bin/config.exe(または、プラットフォームによってはconfig.sh)を実行します。

  2. 「ようこそ」ページで、「新しいWebLogicドメインの作成」を選択し、「次へ」をクリックします。

  3. 「ドメイン・ソースの選択」ページで、「以下の製品をサポートするために、自動的に構成されたドメインを生成する」を選択します。

    • Oracle Installer for JDeveloperを使用した場合は、「Oracle JRF」を選択し、「次へ」をクリックします。

      オプション「基本WebLogic Serverドメイン(必須)」がすでに選択されています。

    • Oracle Fusion Middleware Application Developer Installerを使用した場合は、「Oracle JRF」を選択し、オプションで「Oracle Enterprise Manager」を選択して、「次へ」をクリックします。

  4. 「ドメイン名と場所の指定」ページで、ドメイン名と場所を入力します。

  5. 「管理者ユーザー名およびパスワードの構成」ページで、ユーザー名とパスワードを入力し、「次へ」をクリックします。

  6. 「サーバーの起動モードおよびJDKの構成」ページで、ドメインが開発用か本番システムかを選択し、使用するJDKを選択して、「次へ」をクリックします。

  7. 「オプションの構成を選択」ページで、デフォルトのオプションをそのまま使用し、「次へ」をクリックします。

  8. 「構成のサマリ」ページで、選択内容を確認します。選択内容を変更する場合は、「Previous」をクリックして、そのページに戻ります。選択内容に問題がなければ、「作成」をクリックします。

  9. 作成プロセスが完了したら、「完了」をクリックします。

8.4.2.2 Oracle ADF用のOracle WebLogic Serverドメインの拡張

事前作業:

既存のOracle WebLogic ServerドメインにADFランタイムがすでにインストールされている必要があります。

Oracle ADF用にOracle WebLogic Serverドメインを拡張する手順:

  1. Oracle Fusion Middleware構成ウィザードを起動します。

    • Oracle Installer for JDeveloperを使用した場合は、コマンド・プロンプトからORACLE_HOME/jdeveloper/common/bin/config.cmd(または、プラットフォームによってはconfig.sh)を実行します。

    • Oracle Fusion Middleware Application Developer Installerを使用した場合は、コマンド・プロンプトからWL_HOME/wlserver_10.3/common/bin/config.exe(または、プラットフォームによってはconfig.sh)を実行します。

  2. 「ようこそ」ページで、「既存のWebLogicドメインの拡張」を選択し、「次へ」をクリックします。

  3. 「WebLogicドメイン・ディレクトリの選択」ページで、ADF用に構成するドメインの場所を選択し、「次へ」をクリックします。

  4. 「拡張ソースの選択」ページで、「以下の追加製品をサポートするために、自動的にドメインを拡張する」を選択します。

    • Oracle Installer for JDeveloperを使用した場合は、「Oracle JRF」を選択し、「次へ」をクリックします。

      オプション「基本WebLogic Serverドメイン(必須)」がすでに選択されています。

    • Oracle Fusion Middleware Application Developer Installerを使用した場合は、「Oracle JRF」を選択し、オプションで「Oracle Enterprise Manager」を選択して、「次へ」をクリックします。

  5. 詳細構成の選択ページで、デフォルトのオプションをそのまま使用し、「次へ」をクリックします。

  6. 「構成のサマリ」ページで、選択内容を確認します。選択内容を変更する場合は、「Previous」をクリックして、そのページに戻ります。選択内容に問題がなければ、「拡張」をクリックします。

  7. 構成が完了したら、「完了」をクリックします。

    これにより、manifestファイルを使用して、その他のランタイム.jarファイルが構成されます。


注意:

アプリケーションのEARファイルには、adf.oracle.domain共有ライブラリへの参照を含むweblogic-application.xmlファイルがある必要があります。

これで、コマンドライン・スクリプトORACLE_HOME\user_projects\domains\domain_name\bin\startWebLogic.cmdを実行してOracle WebLogic Serverを起動したり、同じディレクトリでstopWebLogic.cmdスクリプトを使用してサーバーを停止したりできます。Linuxプラットフォームでは、\bin\startWebLogic.shstopWebLogic.shをそれぞれ使用します。

Oracle WebLogic Server管理コンソールにアクセスするには、URL http://localhost:7001/consoleを使用します。

8.4.2.3 Oracle ADF用のリモート管理対象サーバーの設定

管理対象サーバーが管理サーバーとは異なるホストに位置している場合、追加のステップを実行する必要があります。

管理サーバーの位置するホストでOracle ADF用に管理対象サーバーを設定してから、JRFテンプレートを圧縮してリモート・ホストにコピーし、解凍する必要があります。

Oracle ADF用にリモート管理対象サーバーを設定する手順:

  1. Oracle Installer for JDeveloperを使用して、ローカルとリモート両方のホストにOracle WebLogic Serverをインストールします(まだインストールしていない場合)。JDeveloper Studioをインストールしない場合は、インストーラでApplication Development Frameworkランタイム・オプションを選択する必要があります。ローカル・ホストは、管理サーバーが位置するホストです。

    Weblogic Serverがすでにインストールされている場合は、Oracle Installer for JDeveloperを使用し、Application Development Frameworkランタイム・オプションを選択して、両方のホストのWebLogic Serverインストール先にADFランタイムをインストールします。インストールの詳細は、8.4.1項「WebLogic Serverインストール先へのADFランタイムのインストール方法」を参照してください。

  2. Oracle Fusion Middleware構成ウィザードを実行して、新しいOracle WebLogic Serverドメインを作成します。ウィザードでは、8.4.2.1項「Oracle ADF用のOracle WebLogic Serverドメインの作成」の説明に従って、Oracle JRFオプションを選択します。

  3. 両方のホストでOracle Fusion Middleware構成ウィザードを実行して、管理対象サーバーを作成します。

  4. 例8-7に示すように、ローカル・ホストで管理サーバーと管理対象サーバーを起動します。

    例8-7 管理サーバーと管理対象サーバーを起動するコマンド

    cd ORACLE_HOME/user_projects/domain/base_domain/bin
    ./startWeblogic.sh
    ./startManagedWebLogic.sh ManagedServer_1 http://localhost:7001
    
    
  5. ローカル・ホストで管理対象サーバーの構成情報をJARに圧縮し、そのJARをリモート・ホストにコピーします。例8-8に示すように、このJARにはJRFテンプレート情報が含まれています。

    例8-8 構成情報を圧縮してコピーするコマンド

    cd ORACLE_HOME/jdeveloper/common/bin./pack.sh -managed=true -domain=../../../user_projects/domains/base_domain
         -template=../../../base_domain_managed.jar -template_name=
         "Base Managed Server Domain"
    cp ../../../base_domain_managed.jar remote_machine_ORACLE_HOME/
    
  6. 例8-9に示すように、リモート・ホストで管理対象サーバー構成のJARを解凍します。

    例8-9 管理対象サーバーのJARを解凍するコマンド

    cd ORACLE_HOME/jdeveloper/common/bin
    ./unpack.sh -domain=../../../user_projects/domains/base_domain
             -template=../../../base_domain_managed.jar
    

    管理対象サーバーがドメインより後に作成された場合は、unpackを実行する前に、管理対象サーバーのドメイン構成ディレクトリ全体を削除する必要があります。

  7. 例8-10に示すように、リモート・ホストでノード・マネージャを起動します。

    例8-10 ノード・マネージャを起動するコマンド

    cd ORACLE_HOME/wlserver_10.3/server/bin
    ./startNodeManager.sh
    
  8. 管理対象サーバーの作成時にJRFテンプレートを適用しなかった場合は、リモート・ホストでapplyJRF WLSTコマンドを実行し、管理対象サーバーをJRFテンプレートで拡張します。

    また、管理対象サーバーがドメインより後に作成された場合は、applyJRFを実行する前に、管理対象サーバーのドメイン構成ディレクトリ全体を削除する必要があります。

  9. 例8-11に示すように、両方のホストで管理対象サーバーを起動します。

    例8-11 管理対象サーバーを起動するコマンド

    cd ORACLE_HOME/user_projects/domains/base_domain/bin./startManagedWebLogic.sh ManagedServer_2 http://<adminServerHost>:7001
    

8.4.3 Oracle WebLogic Server用のJDBCデータ・ソースの作成方法

Oracle ADF Java EEアプリケーションでは、データベースへの接続にJDBCデータ・ソースを使用できます。JDBCデータ・ソースを構成するには、Oracle WebLogic Server管理コンソールを使用します。JDBCデータ・ソースには、グローバル、アプリケーションレベル、パスワード・インダイレクション機能を持つアプリケーションレベルの3種類があります。通常、グローバルなJDBCデータ・ソースはWebLogic Serverで設定します。データベースにアクセスする必要のあるアプリケーションは、そのJDBCデータ・ソースを使用できます。アプリケーションには、アプリケーションレベルのJDBCデータ・ソースを組み込むこともできます。アプリケーションをデプロイメント用にパッケージ化する際に、「デプロイ中にweblogic-jdbc.xmlディスクリプタを自動生成および同期化」オプションを選択すると、定義した接続ごとにconnection_name-jdbc.xmlファイルが作成されます。各接続の情報は、対応するconnection_name-jdbc.xmlファイルに書き込まれます(weblogic-application.xmlweb.xmlのエントリも変更されます)。アプリケーションがWebLogic Serverにデプロイされると、サーバーはグローバル・データ・ソースを検索する前に、アプリケーションレベルのデータ・ソース情報を検索します。

パスワード・インダイレクションをtrueに設定してアプリケーションをデプロイすると、WebLogic Serverはconnection_name-jdbc.xmlファイルを探してユーザー名情報を特定します。次に、そのユーザー名に対応するアプリケーションレベルの資格証明マップを識別して、パスワードを取得しようとします。JDeveloperを使用してアプリケーションをWebLogic Serverに直接デプロイする場合、資格証明マップは自動的に作成され、MBeanコールによってサーバーに組み込まれます。

ただし、EARファイルをデプロイする場合は、JDeveloperでWebLogic ServerへのMBeanコールを行えません。Oracle WebLogic Server管理コンソールを使用して、資格証明マップを設定する必要があります。グローバルなJDBCデータ・ソースを設定した場合でも、資格証明マッピングを設定していなければ、WebLogic Serverは資格証明をパスワードにマップできず、接続は失敗します。JDBCデータ・ソース、パスワード・インダイレクション、およびアプリケーション資格証明マッピングの設定方法の詳細は、JDeveloperオンライン・ヘルプの「アプリケーションのデプロイ」の「JDBCデータ・ソース」を参照してください。

JDBCデータ・ソース用にOracle WebLogic Serverを構成する手順:

  1. Windowsの「スタート」メニューから「Oracle Fusion Middleware」→「User Projects」→「Domain」→「Start Admin Server for WebLogic Server Domain」を選択して、Oracle WebLogic Serverを起動します(まだ起動していない場合)。

    Linuxの場合は、rootユーザーとしてログインし、次の場所に移動します。

    <ORACLE_HOME>/user_projects/domains/MYSOADomain/bin
    

    次のコマンドを実行します。

    ./startWebLogic.sh
    

    または、アプリケーション・サーバー・ナビゲータで、Oracle WebLogic Serverインスタンスを右クリックし、「管理コンソールの起動」を選択します。

  2. Windowsの「スタート」メニューから「Oracle Fusion Middleware」→「User Projects」→「Domain」→「Admin Server Console」を選択して、Oracle WebLogic Server管理コンソールを起動します。

  3. Oracle WebLogic Server管理コンソールにログインします。

  4. 「WebLogic Server管理コンソール」ページで、「JDBC」→「データ・ソース」を選択します。

  5. 「新規」をクリックします。

  6. 「JDBCデータ・ソースのプロパティ」ページで、次の作業を行います。

    • 「名前」フィールドに、JDBCデータ・ソースの名前を入力します。

    • 「JNDI」フィールドに、「jdbc/connection DS」という形式で接続名を入力します。

    • 「データベースのタイプ」には、「Oracle」を選択します。

    • 「データベース・ドライバ」には「Oracleドライバ(シン)」を選択し、「次へ」をクリックします。

  7. 「トランザクション・オプション」ページで、デフォルトのオプションをそのまま使用し、「次へ」をクリックします。

  8. 「接続プロパティ」ページで次の作業を行います。

    • 「データベース名」にOracle SIDを入力します。たとえば、orclと入力します。

    • 「ホスト名」にデータベースのマシン名を入力します。

    • データベースにアクセスするために使用するポート番号を入力します。

    • データベースのユーザー名とパスワードを入力して、「次へ」をクリックします。

  9. 「データベース接続のテスト」ページで、「構成のテスト」をクリックして接続をテストします。

  10. 「ターゲットの選択」ページで、JDBCデータ・ソースをデプロイするサーバーを選択します。

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

データ・ソースがOracle WebLogic Serverで作成されたら、アプリケーション・モジュールで使用できます。

8.5 アプリケーションのデプロイ

アプリケーションをターゲット・アプリケーション・サーバーにデプロイし始める前に、ベンダー固有の構成を実行することが必要な場合があります。詳細は、アプリケーション・サーバーのドキュメントを参照してください。

JDeveloperでOracle WebLogic Serverへの接続を設定済の場合は、Oracle WebLogic Serverに直接デプロイできます。


注意:

JDeveloperからOracle WebLogic Serverにデプロイする場合は、Oracle WebLogic Server管理コンソールで、HTTPトンネリング・プロパティが有効になっていることを確認してください。このプロパティは、「サーバー」→「ServerName」→「プロトコル」の下にあります。ServerNameは、Oracle WebLogic Serverの名前です。

Oracle ADFを使用するアプリケーションをOracle WebLogic Serverにデプロイし始める前に、ADFランタイムをサーバーにインストールする必要があります。詳細は、8.4.1項「WebLogic Serverインストール先へのADFランタイムのインストール方法」を参照してください。

必要なMDSリポジトリをすべてWebLogic管理サーバーに登録する必要があります。MDSリポジトリがデータベースの場合、リポジトリはMDS固有の要件を備えたOracle WebLogicシステムのデータ・ソースにマップされます。アプリケーションをデプロイする前に、必ずこのデータ・ソースのターゲットをWebLogic管理サーバー、およびアプリケーションのデプロイ先となるすべての管理対象サーバーに設定する必要があります。MDSの登録の詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

adf-config.xmlのMDSリポジトリ構成を必要とするEARファイルとしてパッケージされたアプリケーションを、Oracle WebLogic Server管理コンソールまたはWLSTスクリプトを使用してデプロイする場合は、EARファイルをデプロイする前に、getMDSArchiveConfig WLSTコマンドを実行してMDSを構成する必要があります。MDS構成は、EARファイルにMARファイルが含まれる場合、またはアプリケーションがDT@RT(Design Time At Run Time)に対して有効化されている場合に必要です。WLSTコマンドの詳細は、Oracle Fusion Middleware WebLogic Scripting Toolのコマンド・リファレンスを参照してください。

アプリケーションのデプロイ後に、ADF MBeanを使用してADF接続情報(adf-config.xml)を構成する予定の場合は、アプリケーションがMDSを使用するように構成されていること、およびweb.xmlファイルでMBeanリスナーが有効になっていることを確認してください。詳細は、8.3.6項「アプリケーションをADF MBeanに対して有効化する方法」を参照してください。

MDSの登録の詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

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

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

デプロイ方法 環境 使用するとき

JDeveloperから直接実行

テストまたは開発

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

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

JDeveloperを使用してターゲット・アプリケーション・サーバーに直接デプロイ

テストまたは開発

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

テスト用サーバーでは、開発用サーバーで使用できない機能(LDAPやOracle Single Sign-Onなど)をテストできます。

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

JDeveloperを使用してEARファイルにデプロイし、ターゲット・アプリケーション・サーバーのデプロイ用ツールを使用

テストまたは開発

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

テスト用サーバーでは、開発用サーバーで使用できない機能(LDAPやOracle Single Sign-Onなど)をテストできます。

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

Enterprise ManagerまたはWLSTスクリプトを使用してアプリケーションをデプロイ

本番

この方法は、アプリケーションがテスト環境と本番環境にある場合に使用します。本番環境では、システム管理者がEnterprise Managerを使用するか、WLSTスクリプトを実行して、アプリケーションをデプロイするのが一般的です。


8.5.1 JDeveloperからWebLogic Serverへのデプロイ方法

事前作業:

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


注意:

JDeveloperは、クラスタに属する個々の管理対象サーバーへのアプリケーションのデプロイをサポートしていません。Oracle WebLogic Server管理コンソールやその他のOracle WebLogicツールを使用してクラスタ内の1つ以上の管理対象サーバーをターゲットに設定することは可能ですが、クラスタに悪影響を及ぼす可能性があります。Oracle WebLogic Serverクラスタへのデプロイの詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

JDeveloperからターゲット・アプリケーション・サーバーにデプロイする手順:

  1. アプリケーション・ナビゲータで、アプリケーションを右クリックし、「デプロイ」→「deployment profile」を選択します。

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

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

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

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

    EARファイル内のadf-config.xmlファイルにMDSリポジトリ構成が必要な場合は、図8-3に示す「デプロイメント構成」ダイアログが表示されるので、そこでターゲット・メタデータ・リポジトリまたは共有メタデータ・リポジトリを選択します。「リポジトリ名」ドロップダウン・リストでは、管理サーバーに登録されているメタデータ・リポジトリのリストからターゲット・メタデータ・リポジトリを選択できます。「パーティション名」ドロップダウン・リストでは、デプロイ中にアプリケーションのメタデータがインポートされるメタデータ・リポジトリ・パーティションを選択できます。MDSの構成と登録には、WLSTコマンドまたはOracle WebLogic Server管理ツールを使用できます。MDSリポジトリの管理の詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

    図8-3 デプロイメントのMDS構成およびカスタマイズ

    MDS構成

    注意:

    Java EEアプリケーションをデプロイする場合は、アプリケーション・ナビゲータ内でJava EEアプリケーションの隣にあるアプリケーション・メニューをクリックします。

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


    ヒント:

    大きなEARファイルをデプロイしようとすると、JDeveloperで例外が発生する場合があります。この場合は、Oracle WebLogic Server管理コンソールを使用してアプリケーションをデプロイしてください。

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

デプロイメント・プロファイルを使用してアーカイブ・ファイル(EARファイル)を作成することもできます。作成したアーカイブ・ファイルは、Enterprise Manager、WLSTスクリプト、Oracle WebLogic Server管理コンソールのいずれかを使用してデプロイできます。

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

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

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

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

    • ApplicationDirectory/deploy/EARdeploymentprofile.EAR

    • ApplicationDirectory/ModelProject/deploy/JARdeploymentprofile.JAR

    • ApplicationDirectory/ViewControllerProject/deploy/WARdeploymentprofile.WAR


ヒント:

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

8.5.3 ADFライブラリについて

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

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

詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』アプリケーション・コンポーネントの再利用に関する項を参照してください。

8.5.4 EARファイルとパッケージ化について

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

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

  • MARファイル: アプリケーションとともにデプロイするカスタマイズ内容がある場合、カスタマイズ内容はMARにパッケージ化します。

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

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

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

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

コマンド、スクリプトおよびAntの詳細は、Oracle Fusion Middleware Oracle Application Development Frameworkの管理者ガイドを参照してください。

8.5.6 JDeveloperランタイム・ライブラリについて

アプリケーションをデプロイすると、必要なライブラリの一部がアプリケーションとともに組み込まれます。JDeveloperランタイム・ライブラリとしてすでにWebLogic Serverにロードされている共有ライブラリも必要になる場合があります。どのJDeveloperライブラリがどのWebLogic Server共有ライブラリにパッケージ化されているかを知っておくと便利です。JDeveloperランタイム・ライブラリの内容の一覧は、Oracle Fusion Middleware Oracle Application Development Frameworkの管理者ガイドを参照してください。

8.6 デプロイ後の構成

アプリケーションをWebLogic Serverにデプロイしたら、構成タスクを実行できます。

8.6.1 アプリケーションの移行方法

Oracle ADF Java EEアプリケーションをあるWebLogic Serverから別のWebLogic Serverに移行する場合は、初回のデプロイの際と同じステップの一部を実行する必要があります。

一般に、アプリケーションを移行する際には、次の作業を行います。

8.6.2 ADF MBeanを使用したアプリケーションの構成方法

ADF MBeanが有効化され、デプロイ済アプリケーションとともにパッケージ化されている場合、Enterprise Manager Fusion Middleware ControlのMBeanブラウザを使用してADFプロパティを構成できます。アプリケーションをMBeanに対して有効化する手順は、8.3.6項「アプリケーションをADF MBeanに対して有効化する方法」を参照してください。

ADF MBeanを使用したADFアプリケーションの構成方法の詳細は、Oracle Fusion Middleware Oracle Application Development Frameworkの管理者ガイドを参照してください。

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

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


ヒント:

アプリケーションのコンテキスト・ルートは、ビュー・コントローラ・プロジェクト設定に、デフォルトで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リクエスト単位処理なしで実行されます。