JDeveloper 12cに付属しているEclipseLinkまたはTopLink JPAの実装を使用してバックエンド永続性レイヤーを構築する場合は、そのまま使用できる無料のRESTful APIを入手します。この項では、新しいアプリケーションを作成し、REST Webサービス経由でアクセスできるTopLink JPAエンティティを開発します。
RESTサービスの開発手順には関心がなく、RESTサービスをデプロイできればよい場合は、こちらをクリックしてHRRestアプリケーションの完成版をダウンロードしてください。ファイルをダウンロードしたら、次の3つのステップを実行してください。
1:ハード・ドライブにファイルを解凍し、JDeveloperでHRRest.jwsアプリケーションを開きます。
2:各自のHRスキーマ仕様が使用されるようにHRRESTConn接続を変更します。
3:最初の2つのステップはスキップしてステップ3:サービスのデプロイとテストに進みます。
HRスキーマに接続するJavaクラスの構築方法を学習する場合はステップ1に進み、ステップ1の手順を実行してください。
ゼロから作成したものかダウンロードした完成版かに関係なく、RESTサービスをデプロイする必要があります。
このステップでは、Employees表とDepartments表をサポートするJava EEアプリケーション追加のクラスを作成します。
-
メニューから「File」→「New」を選択します。
New GalleryでGeneralカテゴリを開き、「Applications」ノードを選択します。
次に、「Java EE Web Application」をダブルクリックします。

-
アプリケーション名をHRRestに設定し、他のプロパティはデフォルトのままにします。
次に、「Next」をクリックします。
-
ウィザードの他の値はデフォルトにしたまま、「Finish」ボタンをクリックします。Applicationsウィンドウに、アプリケーションとアプリケーションの2つのプロジェクトが表示されます。

-
Departments表およびEmployees表とのやり取りに必要な2つのエンティティを作成します(このタスクを完了するには、アクセス権のロックを解除しておく必要があります)。
Applicationsウィンドウで「Model」プロジェクトを選択します。
次に、New Galleryを起動し、Business Tierカテゴリを開いて「EJB」ノードを選択します。
続いて、「Entities from Tables」アイテムをダブルクリックします。

-
Persistence Unitステップでは、デフォルトのまま「Next」をクリックします。
Step 3(Type of Connection)では、接続のタイプとしてOnline Database Connectionが選択されていることを確認して「Next」をクリックします。
-
Database Connection Detailsで緑色のプラス記号「
」をクリックし、HRスキーマへの新しい接続を作成します。
次のプロパティを設定します。
Connection Name = HRConn
Username = hr
Password = hr(または各自が設定したパスワード)
次に、「Test Connection」ボタンをクリックして、データベースに接続できることを確認します。
接続できた場合は「OK」をクリックしてウィザードに戻ります。
-
Database Connection Detailsステップに戻り、ConnectionがHRConnに設定されていることを確認します。
次に、「Next」をクリックします。
-
Step 5のSelect Tablesでは、「Query」ボタンをクリックして、HRスキーマに含まれるすべての表を表示します。
DEPARTMENT表とEMPLOYEES表を選択して右側に移動します。
次に、「Next」をクリックします。
-
ウィザードのStep 6では、デフォルト値のまま「Next」をクリックします。
Step 7のSpecify the Entity Detailsでは、HR.DEPARTMENTS表のEntity NameをDepartment(単数)に設定し、Entity Classがmodel.Department(単数)に変更されることを確認します。
-
次に、HR.EMPLOYEES表を選択して、Entity NameをEmployeeに設定し、Entity Classも単数の値
(model.Employee)に変更されることを確認します。
次に、「Next」をクリックします。
-
Step 8のRelationshipsでは、値をデフォルトにしたまま「Finish」をクリックします。

-
Modelプロジェクトには、データベースへのアクセスをサポートするjavaファイルとxmlファイルが含まれています。

この項では、サービス・ファサードで2つのエンティティ(DepartmentとEmployee)をラップします。
-
Modelプロジェクトを作業対象にしたまま、New Galleryから「EJB」カテゴリを選択し、「Java Service Facade (JPA/TopLink)」をダブルクリックします。

-
Step 1のJava Service Classでは、デフォルト値のまま「Next」をクリックします。

-
Step 2のCreate Persistence Unitでは、エンティティの作成時に使用したものが接続に設定されていることを確認します。
Persistence Unitの値(Model-1)を確認します。この値は、RESTサービスにアクセスするためのURLを構成するときに使用します。
次に、「Next」をクリックします。
-
Step 3のJava Service Facade Methodsでは、すべてデフォルト値のまま「Finish」をクリックします。

-
この時点で、Applicationsウィンドウにはサービス・ファサードをサポートする2つのクラスが含まれています。
作業内容を保存します。
このステップでは、ライブラリが含まれるようにプロジェクトを変更し、URLをわかりやすいものにして、サービスをデプロイしてテストします。
-
データ・サービスを有効化するライブラリを追加します。Applicationウィンドウで、「ViewController」プロジェクトをダブルクリックします。続いて、Libraries and Classpathノードをクリックします。

-
「Add JAR/Directory...」ボタンをクリックし、<JDEV_HOME>\oracle_common\modules\oracle.toplink_12.1.3\ディレクトリにナビゲートして「Toplink-dataservices-web.jar」ファイルを選択します。
ここで「Open」をクリックすると、jarがCLASSPATHに追加されます。
-
次に、サービスを起動するためのURLをわかりやいものにします。
引き続きViewController Project Propertiesで「Java EE Application」ノードを選択し、Java EE Web Context RootプロパティをHRRestに設定します。
「OK」をクリックして、すべての作業を保存します。
-
使用するWebサーバーが起動していることを確認します。
ViewControllerプロジェクトのデフォルトのデプロイ・プロファイルを使用してプロジェクトをデプロイします。
Applicationウィンドウで「ViewController」プロジェクトを右クリックし、「Deploy」→「HRRest_ViewController_webapp...」の順に選択します。
-
Deploy Actionダイアログで、「Deploy to Application Server」を選択して「Next」をクリックします。

-
デプロイするサーバーとしてIntegratedWebLogicServerが選択されていることを確認し、「Next」をクリックします。

-
Weblogic Optionsダイアログで、「Deploy to selected instances in the domain」を選択して「DefaultServer」を選択します。
次に、「Finish」をクリックしてサービスをデプロイします。
-
Deployment - Logウィンドウで、サービスがデプロイされたことを確認します。

-
次は、ブラウザを開いて、サービスが使用できるかどうかをテストします。
サービスへアクセスするには次のURLを使用します。IPアドレスは各自のものに置き換えてください。後でサービスからデータを使用するときに使用するため、このURLを保存します。
http://<your_ip>:7101/HRRest/persistence/v1.0/Model-1/query/Department.findAll
HRスキーマに含まれる他のすべての部門とともに、最初の部門(10 - Administration)が返されることを確認します。
-
上に表示されているとおり、出力はXML形式です。ToplinkのRESTfulデータ・サービスAPIは、XMLとJSONの両方をサポートしています。ペイロードをJSON形式で取得する場合は、Content-Typeヘッダー・パラメータを含める必要があります。
サービスをテストし、結果をJSON形式で確認するには、Postman RESTクライアントを使用します。これは、どのようなRESTfulサービスのテストにも適していて、Chrome Web Storeから入手できます。
こちらをクリックしてアプリケーションをインストールしてください。
-
拡張をインストールしたら、ブラウザでPostmanクライアント・アプリケーションを起動します。

-
アプリケーションが起動したら、各自のRESTサービスのURLを入力します。
http://<your_ip>:7101/HRRest/persistence/v1.0/Model-1/query/Department.findAll
次に、青色の「Send」ボタンをクリックして、データをJSON形式で表示します。
-
部門の属性に関係が含まれていることを確認します。これは、リソースが自己記述的なRESTfulサービスの場合によく見られるパターンで、後続のリソース・パスがペイロードとともに返されるため、このパスをたどって他のデータを取得できます。
「employeesList1」リンクをクリックして部門10に含まれる従業員を取得します。
これで、Persistence Acceleratorを使用して利用できるREST/JSONサービスの用意ができました。次のパートでは、MAFアプリケーションを作成し、このサービスを使用してユーザー・インタフェースを開発します。
Expand all | Hide all

