こちらの記事からの継続です。リモートのAutonomous Databaseに、REST対応SQLによってアクセスするOracle APEXのアプリケーションを作成します。
アプリケーション名をリモート・アクセスとした、空っぽのアプリケーションを作成しておきます。アプリケーション・ビルダーの作成から、新規アプリケーションの作成を実行し、名前だけを設定し、それ以外は設定を行わずにアプリケーションの作成を実行します。
この状態から作業の説明を始めます。
Web資格証明の登録
先の記事で作成したOAuthクライアントを、Web資格証明として登録します。作成したアプリケーションの共有コンポーネントを開きます。
作成をクリックして、Web資格証明の登録を行います。
今回はアプリケーションの共有コンポーネントからWeb資格証明のページを開きました。実際には、Web資格証明はワークスペース・ユーティリティに含まれています。そのため、ここで作成したWeb資格証明は、同じワークスペースの他のアプリケーションからも利用することができます。
Web資格証明として、名前を設定し(デフォルトでは静的識別子が名前より導出されるため、英数字の利用に限定してください)、認証タイプとしてOAuth2クライアント資格証明フローを選択します。クライアントIDまたはユーザー名、クライアント・シークレットまたはパスワード(と確認)、URLに対して有効については、前回の記事で作成したOAuthクライアントの目のアイコンをクリックして表示される情報と、Autonomous DatabaseのURL(OAuthクライアントはスキーマAPEXDEVに登録されているので、URLの末尾はスキーマ別名まで含めます)を指定します。
それぞれ設定し、作成をクリックします。
Web資格証明が登録されたことを確認します。
REST対応SQLの登録
アプリケーションの共有コンポーネントに戻り、データ・ソースに含まれるREST対応SQLを開きます。
REST対応SQLの定義も実際にはワークスペース・ユーティリティに含まれているので、ここでの定義は同じワークスペースに作成されているアプリケーションから利用できます。
作成をクリックします。
名前とエンドポイントURLを指定します。名前は任意です。エンドポイントURLは今回はアクセス先のAutonomous DatabaseのURLです。URLの末尾は、スキーマAPEXDEVをREST対応ユーザーとして有効化する際に指定したスキーマ別名になります。以下の形式になります。
https://Autonomous Databaseのホスト.oraclecloudapps.com/ords/スキーマ別名/
Autonomous Database以外でも、末尾はスキーマ別名になります。
次に進みます。
資格証明として先ほど登録したWeb資格証明を選択します。今回の例ではAPEXDEV at AshburnとしてWeb資格証明を登録しているので、それを選択しています。その後、作成をクリックします。
REST対応SQLが作成され、接続テストも続いて行われます。エラーが発生せず、REST対応SQLサービスが作成されました。と表示されれば成功です。ウィンドウを閉じます。
REST対応SQLが新たに登録されていることを確認します。テストのボタンがありますが、これは上記のテストの再実行になるので、繰り返し行う必要はありません。
REST対応SQLによる対話グリッドの作成
アプリケーションに対話グリッドのページを作成します。アプリケーション・ビルダーを開いて、ページの作成をクリックし、ページ作成ウィザードを開始します。
コンポーネントのフォームをクリックします。
編集可能対話グリッドをクリックします。
ページ名をREST対応SQLとします。次に進みます。
ナビゲーションのプリファレンスとして、新規ナビゲーション・メニュー・エントリの作成を選択します。新規ナビゲーション・メニュー・エントリとして、ページ名であるREST対応SQLがデフォルトになります。そのまま変更せず、次へ進みます。
データ・ソースの設定を行います。REST対応SQLサービスを選択します。REST対応SQLサービスとして、登録済みのサービスを選択します。今回はAPEXDEV on Ashburnです。ソース・タイプとして表を選択し、表/ビューの名前としてEMPを選択します。主キー列にEMPNO (Number)を選択し、作成を実行します。
主キー列はウィンドウからはみ出ている場合があるので、ウィンドウを拡大するかスクロールするかして表示させてから、設定します。デフォルトはROWIDなので、レポートの表示列が変わってしまいます。
ページが作成されるとページ・デザイナが開きます。作成されたリージョンのソースの定義を確認します。REST対応SQLがソースのときは、リモート・キャッシュの機能が追加されます。リモート・キャッシュについては、オンライン・ヘルプを参照してください。
作成されたページを実行し、動作を確認します。
検索および行の挿入/更新/削除を行ってみましょう。
REST対応SQLを使ったリモート・データへのアクセスについては以上で完了です。
次の記事ではRESTデータ・ソースを定義し、データベース間でのデータ同期を実装してみます。