このチュートリアルでは、データベースとやり取りするリッチWebアプリケーションを構築する方法を説明します。このアプリケーションの構築には、Oracle JDeveloper 12c Version 12.1.2とOracle Application Development Framework(Oracle ADF)のフレームワークを使用します。その過程で、Oracle ADFビジネス・コンポーネント、Oracle ADF Faces Rich Clientコンポーネント、およびOracle ADFタスク・フローを使用して作業します。
チュートリアルでは、Webアプリケーションを構築する簡単なシナリオを説明します。Webアプリケーションは、データベース表にアクセスするユーザー・インタフェースを提供します。Oracle JDeveloper 12c Version 12.1.2とOracle ADFを使用して、ビジネス・サービス、ユーザー・インタフェース、およびページ・フローを含む完全なアプリケーションを作成します。チュートリアルの目的は、Oracle ADFによって提供されるJava EEアプリケーション開発のための視覚的かつ宣言的なアプローチを説明することです。チュートリアルを進める中で、Oracle ADFにより、低レベル・コードを記述する必要がなくなり、開発プロセスが加速することに注意してください。
このチュートリアルを始める前に、次のことを確認してください。
-
Oracle JDeveloper 12.1.2にアクセスできるか、またはインストール済みであること。この製品は、Oracle Technology Networkからダウンロードできます。任意のディレクトリにファイルをインストールしてください。このチュートリアルでは、このディレクトリをJDEVELOPER_HOMEと呼びます。
-
HRスキーマを含むOracle 11gデータベースにアクセスできるか、またはインストール済みであること(HRスキーマはセキュリティのためにロックされている場合があります。この場合は、システム・ユーザーとしてsqlplusにログインし、HRスキーマをアンロックします)。作成するページの例を下に示します。
JDeveloperで作業する場合、アプリケーション内のプロジェクトとして作業を整理します。JDeveloperには、アプリケーションおよびプロジェクトの作成に利用できるいくつかのテンプレート・アプリケーションが提供されています。テンプレート・アプリケーションは、さまざまな種類のアプリケーションを開発する上で必要となる基本的テクノロジーに基づいて事前構成されています。作業環境を構築するには、ニーズにもっとも合ったテンプレートを選択した上で、必要に応じて、使用予定のテクノロジーを追加する設定を行います。
このチュートリアルのパート1では、新しいFusion Webアプリケーションを作成し、データベースにアクセスする再利用可能なビジネス・コンポーネントを構築します。
Oracle ADFビジネス・コンポーネントを使用して、データベース内の既存の表にJavaオブジェクトをマップします。
-
「スタート」→「プログラム」→「<JDEVELOPER_HOME>」→「OracleHome」→「Oracle JDeveloper Studio」→「Oracle JDeveloper Studio」を選択して、JDeveloperを起動します。
-
Select Roleダイアログで、「Studio Developer (All Features)」を選択して、「OK」をクリックします。
-
ロードが終了すると、JDeveloper IDEが表示されます。初めてJDeveloperを開く際には、Start Pageが表示されます。後でStart Pageを再表示する場合は、「Help」→「Start Page」を選択します。
JDeveloperについて学習するためのさまざまなオプションが用意されています。 これらのオプションをいくつか確認したら、タブ上の「X」をクリックしてStart Pageを閉じます(タブにマウスを合わせると、「X」が表示されます)。
-
アプリケーション・ナビゲータで「New Application」リンクをクリックします。
-
New Galleryで「ADF Fusion Web Application」を選択して、「OK」をクリックします。
-
JDeveloperによってFusion Webアプリケーションに必要な機能がロードされ、Create ADF Fusion Web Applicationウィザードが開きます。
ウィザードのName your applicationページで、名前にHRSystemと入力します。必要に応じて、ファイルを作成するディレクトリ・パスを別の場所に変更しても構いません。
Application Package Prefixフィールドの値をdemoに設定し、「Next」をクリックします。 -
Name your projectページで、Project NameがModel(デフォルト)になっていることを確認します。Fusion WebアプリケーションのProject FeaturesリストにADF Business ComponentsとJavaが含まれることを確認します。
「Next」をクリックします。
-
Configure Java settingsページでは、デフォルト・パッケージ、Javaのソース・パス、出力ディレクトリを定義できます。デフォルト値のままにして、「Next」をクリックします。
-
2番目のName your projectページで、Project NameがViewControllerになっていることを確認します。Project Featuresリストをスクロールし、Fusion Webアプリケーションで使用できるテクノロジーの種類を確認します。
「Next」をクリックします。
-
Configure Java settingsページで、デフォルト値を受け入れて「Finish」をクリックし、Fusion Webアプリケーションとプロジェクトを作成します。
-
画面左のアプリケーション・ナビゲータに、HRSystemアプリケーションと2つのプロジェクトが表示されます。変更を保存します。
この画面右側のチェックリストも確認します。
このチェックリストは、Fusion Webアプリケーションが作成されるとデフォルトで表示されます。このリストは、この種類のアプリケーション構築に関係するタスクを示すためのものです。次のステップでは、アプリケーションの開発中にどのようにチェックリストが使用されるかについて説明します。
また、シェイピング機能を使用して、ツール内のダイアログ・フィールドのデフォルト値をコントロールすることもできます。JDeveloperを最初に起動する場合、ロールの選択を指示されます。このロールはJDeveloperの使用方法を表しています。"Java Developer"、"Database Developer"、"Customization Developer"のロールのいずれを選択するかによって、まったく異なる作業環境が得られます。
以前のバージョンのJDeveloperからプリファレンスをインポートするかどうかを確認するダイアログ・ボックスが開いたら、「NO」をクリックします。Tip of the Dayウィンドウを閉じます。
-
Checklist Overviewで、「Connect to a Database」ステップをクリックします。
-
このステップの内容が展開され、このタスクの実行に必要な前提条件や、タスクの実行方法に関する詳しい指示などの役立つ情報が表示されます。「Create a Database Connection」ボタンをクリックします。
-
作成する新規接続のプロパティを次のように指定します。
Connection Name HRConn
UserName hr
Password hr
Oracle JDBC Settingsに適切な値を入力して、使用するデータベースに合ったホスト、ポート、SIDを指定します。「Test Connection」ボタンをクリックして、接続が成功することを確認します。
「OK」をクリックします。
-
下矢印をクリックして、Connect to a Databaseステップの内容を閉じます。
-
Checklistで、Connect to a Databaseステップのステータスを「Done」に設定します。
-
「Build Business Services」ステップをクリックして展開し、「Go to Substeps」ボタンをクリックします。
-
サブステップ・リストで「Create Entity Objects and Associations」サブステップをクリックします。
-
「Create Entity Objects and Associations」ボタンをクリックします。
-
Select Project for Actionダイアログで、「Model」プロジェクトを選択し、「OK」をクリックします。
-
Initialize Business Components Projectダイアログで、HRConn接続が選択されていない場合は、これを選択します。「OK」をクリックします。
-
Create Business Components from Tablesウィザードが開きます。Entity Objectsページで「Query」ボタンをクリックし、データ・ディクショナリを調べて利用可能な表を表示します。
-
Availableリストから「DEPARTMENTS」表と「EMPLOYEES」表を選択します。右矢印をクリックして、これらをSelectedリストに移動します。この手順により、選択された表に基づいて、更新可能なエンティティ・オブジェクトが作成されます。
「Next」をクリックして続行します。
-
ウィザードのEntity-based View Objectsページで、Departments(HR.DEPARTMENTS)とEmployees(HR.EMPLOYEES)をSelectedリストに移動します。この手順により、先ほど作成したエンティティ・オブジェクトに対する問合せに対応したビュー・オブジェクト(DepartmentsViewとEmployeesView)が作成されます。
「Next」をクリックして続行します。
-
Query-based View Objectsページで、「Query」ボタンをクリックし、JOBSをSelectedリストに移動します。この手順により、JOBS表に対する問合せを行う、読取り専用のビュー・オブジェクトが作成されます。「次へ」をクリックして続行します。
-
Application Moduleページで「Finish」をクリックして、Modelプロジェクト内にビジネス・コンポーネントを作成します。
-
Checklistで、Create Entity Objects and Associationsステップのステータスを「Done」に設定します。
-
「Close Step 3」ボタンをクリックします。
-
「Back to Checklist」リンクをクリックし、Build Business Servicesステップのステータスを「Done」に設定します。
-
アプリケーション・ナビゲータで、「AppModule」を右クリックして「Run」を選択し、アプリケーション・モジュール・テスターを起動します。このテスターは、Swingベースの小さなアプリケーションです。これを使用して、作成したばかりのOracle ADFビジネス・コンポーネントをテストできます。
-
Oracle ADF Model Testerウィンドウで、「EmpDeptFkLink1」ノードをダブルクリックすると、部門と従業員のデータが表示されます。Nextボタンを使用してレコードを移動し、マスター・ディテールが自動的に同期される様子を観察します。
-
マスター・ツールバーの「」Specify View Criteriaボタン(双眼鏡アイコン)をクリックし、データの検索条件を入力します。LocationIdフィールドに1700と入力し、「Find」ボタンをクリックして、問合せを実行します。
-
フォームにはこのロケーションの部門のみが表示されます。「Next」ボタンを使用して、ロケーション1700に含まれる部門データをスクロールします。
再度すべての部門にアクセスするには、検索条件のパラメータ値を削除する必要があります。
-
Oracle ADF Model Testerウィンドウを閉じ、JDeveloperに戻って、JDeveloperメニュー・バーの「」Save Allアイコンをクリックするか、メニューから「File」→「Save All」を選択します。