ここでは、次の項目について説明します。
Oracle REST Data Servicesをインストールするには、「ツール」、「RESTデータ・サービス」、「インストール」の順にクリックします。Oracle REST Data Servicesのインストール/実行ウィザードの指示に従ってください。
インストールの完了後にOracle REST Data Servicesをスタンドアロン・モードで実行するには、「ツール」、「RESTデータ・サービス」、「実行」の順にクリックします。Oracle REST Data Servicesのインストール/実行ウィザードの「スタンドアロン・モードの実行」の指示に従ってください
Oracle REST Data Servicesをアンインストールするには、「ツール」、「RESTデータ・サービス」、「アンインストール」の順にクリックします。Oracle REST Data Servicesのアンインストールの指示に従ってください。
Oracle REST Data Servicesを再インストールするには、「Oracle REST Data Servicesのアンインストール」の説明どおりに、先に現在のインストールをアンインストールする必要があります。
Oracle REST Data Servicesの「管理」インタフェースでは、Oracle REST Data Servicesのグローバル設定と、データベース接続が異なる複数のデータベース設定を指定できます。REST Data Servicesの各設定の作成、取得、アップロード、保存が可能です。
詳細は次のサブトピックを参照してください。
Oracle REST Data Servicesは、Oracle HTTP Server (OHS)およびmod_plsqlのかわりに使用されるJEEベースのサービスです。JEE実装により、コマンドライン・ベースの構成、拡張されたセキュリティ、ファイル・キャッシングおよびRESTful Webサービスを含む機能が強化されています。また、Oracle REST Data Servicesでは、Oracle WebLogic Server、Oracle Glassfish Server、Apache Tomcatおよびスタンドアロン・モードを使用したデプロイメントをサポートすることで、優れた柔軟性が提供されます。
Oracle Application Expressアーキテクチャでは、WebブラウザとOracle Application Expressエンジン間でのリクエストのプロキシのための何らかのWebサーバーが必要です。Oracle REST Data Servicesは、この要件を満たしていますが、Oracle Application Express構成の範囲を超えて使用されています。Oracle REST Data Servicesを使用すると、組み込まれているJDBCドライバを介して接続できるため、Oracleホームが必要なく、デプロイメント・プロセスが簡素化されます。概念と詳細は、Oracle REST Data Servicesインストレーション、構成および開発ガイドを参照してください。
Oracle REST Data Servicesの「管理」ウィンドウは、上部にアイコンの並んだツールバーがあり、「RESTデータ・サービス」ナビゲータを右クリックするとコンテキスト・メニューが開きます。
注意:
管理設定を取得またはアップロードするには、Oracle REST Data Services 3.0以上をインストールし実行する必要があります。また、Oracle REST Data ServicesでREST Data Servicesの管理者ユーザーを構成する必要があります。Oracle REST Data Servicesのインストールの詳細は、Oracle REST Data Servicesインストレーション、構成および開発ガイドを参照してください。
ツールバーおよびコンテキスト・メニューでは、次のアクションを実行できます。
「新規管理」では、「RESTデータ・サービス管理の作成」ダイアログ・ボックスが表示され、ここでは、「名前」およびオプションで管理の「説明」を指定します。
このボックスで「適用」をクリックした後、REST Data Services管理ウィンドウの「リスナー」ナビゲータには、グローバルおよびデータベース設定が階層表示されます。任意のノードを選択して、表示用および関連する設定の変更用のペインを表示します。
「ファイルを開く」では、保存された管理設定を含むファイルを開きます。管理設定がすでに表示されている場合、既存の設定を上書きするかどうか警告されます。
「別名保存」では、後で開くことのできる.zipファイルに現在の設定を保存します。
「設定の取得」では、REST Data Servicesの管理設定を取得できます。
「設定のアップロード」は、REST Data Servicesに管理設定をアップロードします。データベース設定は、アップロードする前に検証されます。いずれかの設定が無効である場合、または必要な設定が欠落している場合、管理設定はアップロードされません。
ヒント: 管理設定をアップロードする前に、「設定のテスト」をクリックして、データベース設定を検証します。メッセージを確認して、エラーを修正します。
「設定のテスト」では、データベース設定を検証して、不正な設定または欠落している必須の設定の情報のメッセージが表示されます。検証でエラーが検出されなかった場合、検証が正常に完了したことを示すメッセージが表示されます。
「起動URL」は、たとえば、http://
host:port
/apex
など、ブラウザでホーム・ページを表示します。
接続 (コンテキスト・メニューのみ): Oracle REST Data Servicesに接続します(「Oracle REST Data Servicesへの接続」を参照).
「設定の取得」、「設定のアップロード」および「起動URL」は、Oracle REST Data Servicesに接続すると有効になります。
切断(コンテキスト・メニューのみ): Oracle REST Data Servicesから切断します。
Oracle REST Data Servicesの管理で、管理設定を取得またはアップロードするには、Oracle REST Data Servicesへの接続が必要です。「RESTデータ・サービス」ナビゲータで右クリックして、コンテキスト・メニューを表示し、「接続」を選択します。「RESTデータ・サービス接続」ダイアログ・ボックスが表示され、ここでは、接続の選択、リストへの接続の追加またはリストでの接続の編集を実行できます。
接続を選択して「OK」をクリックすると、必ずREST Data Servicesの管理パスワード(REST Data Servicesのインストール時に入力したパスワード)を求められます。正常に認証が完了したら、管理設定が取得および表示されます。
REST Data Services接続を追加または編集する場合には、次の情報を指定できます。
接続名: 指定した情報に基づいて接続するREST Data Servicesを識別する名前。
ユーザー名: REST Data Servicesのインストール時に指定したREST Data Services管理者ユーザー名。管理ユーザーの構成の詳細は、Oracle REST Data Servicesインストレーション、構成および開発ガイドを参照してください。
httpまたはhttps: 使用するプロトコルを選択します。
ホスト名: REST Data ServicesのDNS名またはIPアドレス。
ポート: REST Data Servicesがリスニングするポート。
サーバー・パス:: アプリケーション・サーバーでREST Data Servicesがデプロイされる場所。デフォルト: /ords
(2.0.6以前: /apex
)
注意:
「認証に失敗しました」エラーが発生した場合、「RESTデータ・サービス接続: 認証に失敗しました」の手順を参照してください。
関連項目
REST Data Servicesの「管理」設定は、1つ以上のデータベースのグローバル設定およびデータベース設定から構成されています。設定は、次のナビゲータ階層に表示されます。
Administration Global Settings Connections JDBC PL/SQL Gateway User Security Allowed Procedures Blocked Procedures Validation Function Virus Scanning Cache Files Caching Environment Error Reporting Log Reporting Pre-Processing Post-Processing Excel Database Settings <database-name> Connections JDBC URL Mapping (Database Settings only) Oracle REST Data Services Public User (Database Settings Only) PL/SQL Gateway User APEX REST Users (Database Settings only)
「グローバル設定」では、特定のデータベース設定のデフォルト値を指定します。
「データベースの設定」では、特定のデータベースへのREST Data Services接続における一部のカテゴリの値を指定します。Oracle REST Data Servicesは、異なるデータベース接続で複数のデータベース設定を作成し、URLマッピングを使用して、適切なデータベースへリクエストをルーティングすることで、複数のデータベースへの接続をサポートします。
ナビゲータで、複数のデータベース設定を作成、編集または削除できます。データベース設定を追加するには、「データベースの設定」を右クリックして、「新規設定」を選択します。データベース設定を削除するには、目的の設定で右クリックして、「設定の削除」を選択します。
データベース設定を表示するペインでハイライト表示されている設定値は、グローバル設定値を示します。データベース設定値を変更して、後でグローバル設定値を使用することになった場合、「リセット」をクリックして、グローバル設定値をリストアします。
データベース設定の妥当性を確認するには、REST Data Servicesの管理ウィンドウ・ツールバーで、「設定のテスト」をクリックします。
「接続」を使用して接続タイプ、「基本」、「TNS」または「拡張」を指定します。(接続タイプの詳細は、データベース接続の作成/編集/選択、特に「Oracle」タブを参照してください。)
JDBC
JDBCを使用して、JDBCオプションを構成します。
JDBCドライバ・タイプ: thinまたはoci8。
初期プール・サイズ: 作成される接続の数の初期プール・サイズ。
最大文数: 各接続をキャッシュする最大文数。
接続サイズ: 接続の最大数および最小数。
非アクティブのタイムアウト: 使用できる接続がクローズするまでにアイドル状態を保つ時間(秒単位)。
中止した接続のタイムアウト: 流用した(使用中の)接続が中止および再利用とみなされるまでに未使用のままでいる時間(秒単位)。
URLマッピング(データベース設定のみ)
URLマッピングは、複数のデータベース接続の構成に使用され、リクエストが適切なデータベースまでルーティングする方法のルールを定義します。
データベース接続に対して、「ルール・タイプ」および「ルーティング・ルール」にルールを指定します。「ルーティング・ルール」では、正規表現を使用できます。
マッピングを追加するには、「URLの追加」(+)アイコンをクリックし、「ルール・タイプ」を選択して「ルーティング・ルール」を指定します。マッピングを削除するには、マッピングを選択して、「URLの削除」(X)アイコンをクリックします。
ルール・タイプ: ルールのタイプ: 「リクエスト・パス」
、「URLパス」
または「正規表現」
。
ルーティング・ルール: リクエストをデータベース接続にルーティングする方法に関するルール。このトピックの例またはルーティング・ルールを参照してください。
RESTfulサービスのスキーマ(オプション): データベース接続でRESTfulサービスが定義されているApplication Expressワークスペースの名前。RESTfulサービスが使用されていない場合、これは省略できます。
ルーティング・ルールの例:
URL = http://example.com/apex/sales/f?p=1:1
プロトコル: http
ホスト名: example.com
コンテキスト・ルート: /apex
(アプリケーション・サーバーでREST Data Servicesがデプロイされる場所)
リクエスト・パス: /sales/f?p=1.1
(コンテキスト・ルートに関連するリクエストURL)
リクエスト・パス接頭辞を使用したルーティングの例:
REST Data Servicesがexample.com
にデプロイされ、そのコンテキスト・パスが/apex
で、データベース設定名がsales_prod
の場合、次のリクエスト・パス接頭辞ルーティング・ルールが作成できます。
ルール・タイプ: リクエスト・パス
ルーティング・ルール: /sales
RESTfulサービスのスキーマ: sales_rest
前述のルールは、http://example.com/apex/sales/...
に一致するすべてのリクエストがsales_prod
データベース接続にルーティングされることを意味します。sales_prod
データベース接続で指定したsales_rest
スキーマは、RESTfulサービス定義を検索します。
前述のルーティング・ルールは、次のいずれかのリクエストに一致します。
http://example.com/apex/sales/f?p=1:1 https://example.com/apex/sales/f?p=1:1 http://example.com/apex/sales/leads/ http://www.example.com/apex/sales/forecasting.report?month=jan (if www.example.com resolves to the same system)
前述のルーティング・ルールは、次のいずれのリクエストにも一致しません。
http://example.com:/apex/leads/f?p=1:1 (missing the /sales prefix) http://example.com/apex/f?p=1:1 (missing the /sales prefix) http://example.com/pls/sales/leads/ (the context root is wrong)
URL接頭辞を使用したルーティングの例:
REST Data Servicesがexample.com
にデプロイされ、そのコンテキスト・パスが/apex
であり、データベース設定名がsales_prod
であると仮定すると、次のURL接頭辞ルーティング・ルールを作成できます。
ルール・タイプ: URLパス
ルーティング・ルール: http://example.com/apex/sales
RESTfulサービスのスキーマ: sales_rest
前述のルールは、http://example.com/apex/sales/...
に一致するすべてのリクエストがsales_prod
データベース接続にルーティングされることを意味します。sales_prod
データベース接続で指定したsales_rest
スキーマは、RESTfulサービス定義を検索します。
前述のルーティング・ルールは、次のいずれかのリクエストに一致します。
http://example.com/apex/sales/f?p=1:1 http://example.com/apex/sales/leads/ http://example.com/apex/sales/forecasting.report?month=jan
前述のルーティング・ルールは、次のいずれのリクエストにも一致しません。
https://example.com/apex/sales/f?p=1:1 (the protocol is wrong) http://example.com:8080/apex/sales/f?p=1:1 (the port is wrong) http://example.com/apex/f?p=1:1 (missing the /sales segment of the base URL) http://example.com/pls/sales/leads/ (the context root is wrong) http://www.example.com/apex/sales/forecasting.report?month=jan (the host name is wrong)
Oracle REST Data Servicesパブリック・ユーザー(Oracle REST Data Services RESTfulサービスにアクセスする権限を持つデータベース・ユーザー)の資格証明(ユーザー名とパスワード)を指定します。
PL/SQLゲートウェイ・ユーザーの資格証明(ユーザー名とパスワード)を指定します。これは、格納されているPL/SQLストアド・パッケージやストアド・プロシージャを、指定のデータベース接続で実行するときに使用されます。
Oracle Application Express RESTfulサービスを使用する場合は、PL/SQLゲートウェイ操作の起動時に使用するデータベース・ユーザーAPEX_REST_PUBLIC_USERのパスワードおよびOracle Application Expressに格納されているRESTfulサービス定義の問合せに使用するデータベース・ユーザーAPEX_LISTENERのパスワードを指定します。
これらのユーザーを指定することで、Oracle Application Expressアプリケーションが、データ交換のために別のアプリケーションからアクセスされるWebサービスを公開できます。たとえば、RESTfulサービスを構成して、特定の部門のすべての従業員名を返すことができます。RESTfulサービスのデータ交換は、Representational State Transfer (REST)プロトコルに従います。RESTデータ・サービスとともに使用するRESTfulサービスの開発方法の詳細は、「REST開発」および『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』を参照してください。
セキュリティ設定は、プロシージャ・リクエストの検証に使用され、ユーザーがプロシージャにアクセスできるかを決定します。
Secure Socket Layerリクエストの検証: 使用する環境でHTTPSが使用できる場合、このオプションを有効にします。
RESTfulサービスは、OAuth2プロトコルで保護され、パブリックではないデータへのアクセスを制限します。OAuth2では、OAuth2認証プロセスに関係するすべてのリクエストをHTTPSを介してトランスポートする必要があります。REST Data Servicesのデフォルトの動作では、OAuth2に関連するすべてのリクエストがHTTPSを介して受信されていることを検証します。HTTPを介して受信するリクエストへのサービスは拒否され、403 ForbiddenのHTTPステータス・コードが返されます。
このオプションは、開発環境またはテスト環境でのみ無効にできます。ユーザー資格証明がクリア・テキストで渡されるため、本番環境では、このオプションを無効にしないでください。
セキュリティ・キャッシュ: PL/SQL検証ファンクションを指定する場合、Oracle REST Data Servicesでは、セキュリティ・キャッシュを使用し、プロシージャ名をキャッシュして、それらが有効かまたは無効かを決定します。キャッシング・メカニズムを使用すると、PL/SQL検証ファンクションの実行に必要なデータベース・ラウンドトリップ数を減らします。
最大キャッシュ・エントリ数: キャッシュの最大サイズ。最大エントリ数に達した場合、最低使用頻度の古い(または失効の)プロシージャがキャッシュから削除され、新しいプロシージャ名がキャッシュに追加されます。
許可されたプロシージャ
ブラウザから直接実行することを許可されているプロシージャ、パッケージまたはスキーマ名のパターンを指定します。アスタリスク(*)を使用して、0文字以上の文字を置換すること、および疑問符(?)を使用して、任意の1文字を置換できます。
許可されたプロシージャを指定する利点は、プロシージャ名およびプロシージャ・パターンがOracle REST Data Servicesに格納されていることです。これに対して、PL/SQL検証ファンクションの起動には、データベース・ラウンドトリップが必要です。
エントリを追加するには、「プロシージャの追加」(+)アイコンをクリックして、パターンを入力します。エントリを削除するには、エントリを選択して、「プロシージャの削除」(X)アイコンをクリックします。
許可されたプロシージャが指定されていない場合、Oracle REST Data Servicesは、プロシージャ名を検証せず、プロシージャの処理を許可するかどうかを決定します。
ブロックされたプロシージャ
ブラウザから直接実行することを禁止されているプロシージャ、パッケージまたはスキーマ名のパターンを指定します。アスタリスク(*)を使用して、0文字以上の文字を置換すること、および疑問符(?)を使用して、任意の1文字を置換できます。
ブロックされたプロシージャが指定されていない場合、Oracle REST Data Servicesは、プロシージャ名を検証せず、プロシージャの処理をブロックするかどうかを決定します。
エントリを追加するには、「プロシージャの追加」(+)アイコンをクリックして、パターンを入力します。エントリを削除するには、エントリを選択して、「プロシージャの削除」(X)アイコンをクリックします。
デフォルトの内部除外リストの無効化: このオプションが選択されている場合、Oracle REST Data Servicesの内部除外リストは適用されません。この内部除外リストは、ユーザーの次へのアクセスをブロックします。
sys.*, dbms_*, utl_*, owa_*, owa.*, htp.*, htf.*, wpg_docload.*
このオプションを選択しない、つまり、デフォルトの内部除外リストを無効化しないことをお薦めします。可能な例外は、デバッグ目的での内部除外リストの一時的な無効のみです。
検証ファンクション
「検証ファンクション」を使用して、URLのリクエストされたプロシージャの処理が許可されるかどうかを決定します。Oracle REST Data Servicesでは、リクエストされた各プロシージャに指定した検証ファンクションを実行するか、またはセキュリティ・キャッシュを確認して、プロシージャが有効か無効かを決定します。
検証ファンクションは、プロシージャの処理を許可する場合にtrue
を返します。それ以外は、false
を返します。
検証ファンクション・タイプ: 実装言語(PL/SQLまたはJavaScript)。
検証ファンクション: PL/SQLでは、データベースに常駐しているストアド・ファンクションの名前です。指定した検証ファンクションが存在しない場合、エラー・メッセージが表示されます。
JavaScriptでは、JavaScriptで記述されたコードです。PL/SQLデータベース・ファンクションを使用するかわりにJavaScriptを使用する利点は、検証ファンクションを実行するためにデータベース・ラウンドトリップがないということです。
ウィルス・スキャン
ファイルのウィルス・スキャンを行うためのInternet Content Adaptation Protocol (ICAP)サーバー名およびポートを指定してください。ファイルに影響があった場合、メッセージが表示されます。
ファイルのキャッシュを許可するプロシージャ名を指定します。
エントリを追加するには、「プロシージャの追加」(+)アイコンをクリックして、プロシージャを入力します。エントリを削除するには、エントリを選択して、「プロシージャの削除」(X)アイコンをクリックします。
最近使用したファイルを保持: これを選択する場合、最高使用頻度のファイルがキャッシュに保持されます。キャッシュする最大ファイル数を指定します。最大エントリ数に達した場合、新しいファイルが追加されると、古いファイルがキャッシュから削除されます。
指定した期間だけファイルを保持: 選択すると、キャッシュされたファイルは、指定した日数、時間または分数(0以上)がたつと期限切れになります。
キャッシュ
キャッシュ・ファイルの場所: キャッシュ・ファイルのディレクトリ。
Application Expressドキュメント表: Application Expressによって使用されるドキュメント表の名前。(PL/SQL Gatewayを使用してアップロードしたすべてのファイルは、ドキュメント表に格納されます。)
PL/SQLゲートウェイ
デフォルトWebページ: 表示するデフォルトのWebページ。
拡張機能クラス:: REST Data Servicesを拡張する拡張機能クラス。
プロシージャ・レコーダ: 選択すると、プロシージャがログされます。
エラー・レポート
コンソールにデバッグ・メッセージを表示するか、またはブラウザにエラー・メッセージを表示するかを選択するか、あるいは、その両方を選択するかまたはいずれも選択しないかを指定できます。本番システムでは、両方のオプションを選択解除(無効)する必要があります。
デバッグ・メッセージをコンソールに表示: 選択すると、コンソールにデバッグ・メッセージが表示されます。これは問題の診断に役立ち、REST Data Servicesのログ出力に追加されます。ただし、ログへの大量のデータの出力によるパフォーマンスへの影響のため、本番システムでは、このオプションを有効にしないでください。
エラー・メッセージをブラウザに表示: 選択すると、ブラウザに詳細な各エラー・メッセージおよびスタック・トレースを含むエラー・レスポンスが表示されます。ただし、機密情報が漏洩するリスクがあるため、本番システムではこのオプションを有効にしないでください。
ログ・レポート
ロギング: Oracle REST Data Servicesログにエントリを作成するかどうかを指定します。ログには、キャッシュへのプロシージャの追加、キャッシュでのプロシージャの検索またはプロシージャのリロードなどのアクティビティが含まれています。ログには、そのプロシージャのデータベース時間および処理時間がミリ秒単位で表示されます。
最新のログ・メッセージを保持: 選択すると、最新のエントリがログに保持されます。キャッシュするログ・メッセージの最大数を指定します。最大エントリ数に達した場合、新しいログ・メッセージが追加されると、古いログ・メッセージはキャッシュから削除されます。
前処理
リクエストされたプロシージャの実行前に実行するプロシージャの名前を指定します。
エントリを追加するには、「プロシージャの追加」(+)アイコンをクリックして、プロシージャ名を入力します。エントリを削除するには、エントリを選択して、「プロシージャの削除」(X)アイコンをクリックします。
後処理
リクエストされたプロシージャの実行後に実行するプロシージャの名前を指定します。
エントリを追加するには、「プロシージャの追加」(+)アイコンをクリックして、プロシージャ名を入力します。エントリを削除するには、エントリを選択して、「プロシージャの削除」(X)アイコンをクリックします。
Oracle Application Expressを使用している場合、Application ExpressコレクションにExcelファイルを配置するオプションがあります。
複数のExcelファイルから1つのコレクションを作成: 選択すると、Application ExpressコレクションにExcelファイルを配置します。
各Excelワークシートを1つのコレクションに含める: 選択すると、すべてのExcelワークシートを「コレクション名」を指定した1つのコレクションに追加します。
Excelワークシートの名前をコレクション名として使用: 選択すると、各Excelワークシートにコレクションを作成し、対応するコレクション名に各ワークシートの名前を使用します。
保護されているまたは保護されていないNoSQLストア構成を作成、編集、削除および名前を変更できます。構成を作成するには、ナビゲータで「NoSQLストア構成」を右クリックし、「NoSQLストアの追加」を選択します。
構成を作成するには、ナビゲータで「NoSQLストア構成」を右クリックし、「NoSQLストアの追加」を選択します。
構成の名前を変更するには、構成の名前を右クリックしてNoSQLストアの名前変更を選択します。
構成を削除するには、構成の名前を右クリックして「NoSQLストアの削除」を選択してから、削除を確認します。
NoSQLストア構成の表示には、2つのタブがあります。「NoSQLストア構成」および「セキュアなNoSQLストア」です。
「NoSQLストア構成」タブ
ストアの別名: 次の書式でNoSQLリクエストで使用される、NoSQLストアの別名。
host:port/ords/<nosqlstorealias>/<nosqlservice>
詳細は、『Oracle REST Data Servicesインストレーション、構成および開発ガイド』のNoSQLに関する章を参照してください。
ストア名: NoSQLストアの名前(kvstore
など)。
ホストおよびポート: ホスト/ポートの組合せを追加および削除します。
ロール: ロールを追加および削除します。
ページごとのアイテムの最大数: 応答のページごとに返されるアイテムの最大数。
「セキュアなNoSQLストア」タブ
セキュアなNoSQLストア: このオプションが有効な場合、NoSQLストアは保護されています。
クライアント・セキュリティ・ファイル: client.security
ファイルの場所。
クライアント信頼ファイル: client.trust
ファイルの場所。
ユーザー名: ストアにアクセスするユーザーの名前。
ウォレット・ディレクトリまたはパスワード(およびパスワードの確認): 指定されたユーザーの認証に使用する方法。
Oracle REST Data Servicesがデータベース接続に関連付けられているシステムにインストールされていて、その接続がSQL Developerでオープンな場合、AutoREST機能を使用して、そのデータベース接続に関連付けられているスキーマ内の指定した表とビューに対するOracle REST Data Servicesアクセスを簡単に有効化または無効化できます。表やビューに対するRESTアクセスを有効化すると、RESTfulサービスを通じてアクセスできるようになります。
AutoRESTは、データベース表をRESTリソースとして公開する素早く簡単な方法です。労力を削減するために、柔軟性とカスタマイズの容易性を若干犠牲にします。AutoRestによってデータを素早く公開できますが、(例えた言い方をすると)ガイド・レールのセットに乗せてしまいます。たとえば、出力形式や入力形式をカスタマイズできず、追加の検証も実行できません。
一方、手動で作成したリソース・モジュールでは、RESTリソースをサポートするためにSQLおよびPL/SQLを指定する必要があります。リソース・モジュールを使用することは労力を要しますが、柔軟性を向上します。たとえば、どのフィールドを含めるかのカスタマイズ、複数の表の結合、およびPL/SQLを使用した受信データの検証を実現できます。
そのため、アプリケーション開発者は、AutoRESTの「ガイド・レール」を使用するか、まさに必要なことを実行するためにリソース・モジュールを作成するかを選択する必要があります。AutoRESTを選択した場合、スキーマ内で表(または表のセット)を有効にするだけです。
スキーマを有効化することは、スキーマ内のすべての表とビューを有効化することとは異なることに注意してください。Oracle REST Data Servicesにスキーマが存在することを認識させ、HTTPに公開するリソースがゼロまたはそれ以上ある可能性があることを意味するのみです。これらのリソースはAutioRESTリソース、またはリソース・モジュール・リソースである可能性があります。
1つ以上の指定した表またはビューへのOracle REST Data Servicesアクセスを有効にするには、次のことを実行する必要があります。
RESTアクセス用にスキーマ(接続に関連付けられているスキーマ)を有効にします。
スキーマ・レベル: 接続に関連付けられているスキーマの(次の手順で指定する)選択したオブジェクトへのOracle REST Data Servicesアクセスを有効にするには、「接続」ナビゲータでその名前を右クリックし、「RESTサービス」、「RESTサービスの有効化」の順に選択します。
(接続に関連付けられているスキーマのオブジェクトへのOracle REST Data Servicesアクセスのサポートを削除するには、「接続」ナビゲータでその名前を右クリックし、「RESTサービス」、「RESTサービスの削除」の順に選択します。)
希望するオブジェクトのRESTアクセスを個別に有効化します。
表またはビュー・レベル: 指定した表またはビューへのOracle REST Data Servicesアクセスを有効化するには、「接続」ナビゲータでその名前を右クリックし、「RESTサービスの有効化」の順に選択します。
「RESTfulサービス・ウィザード」(RESTアクセスを自動で有効化)の指示に従います。
SQL Developerを使用して、RESTfulサービスを作成、メンテナンスおよび使用できます。詳細は次のトピックを参照してください。
Representational State Transfer (REST)は、World Wide Webのような分散ハイパーメディア・システムのためのソフトウェア・アーキテクチャのスタイルです。RESTの原則に準拠するサービスは、RESTfulと呼ばれます。RESTfulサービスには次の特性があります。
データは一連のリソースとしてモデル化されます。リソースはURIで識別されます。
リソースの操作には、一連の統一された小さな操作が使用されます(GET、POST、PUT、DELETEなど)。
リソースは、複数の形式で表示できます(たとえば、ブログは、HTML形式およびRSS形式で表示できます)。
サービスはステートレスですが、クライアントが関連リソースにアクセスできるように、返される表示で、通常はハイパーテキスト・リンクによって関連リソースを示す必要があります。
RESTfulサービスに関する主要な用語の一部を次に示します。
RESTfulサービス: RESTfulアーキテクチャ・スタイルの原則に準拠したHTTP Webサービス(「RESTfulサービスについて」を参照)。
リソース・モジュール: 関連するリソース・テンプレートをグループ化するために使用される構成単位。
リソース・テンプレート: 一部のURI (Universal Resource Identifiers)のセットにサービス要求を行える個別のRESTfulサービス。URIのセットは、リソース・テンプレートのURIパターンで定義されます
URIパターン: リソース・テンプレートのパターン。ルート・パターンの使用をお薦めしますが、ルート・パターンまたはURIテンプレートのいずれにもできます。
ルート・パターン: URIのパス部分をコンポーネント・パーツに分解することに重点をおくパターン。たとえば、/objects/:object/:id?
のパターンは、/objects/emp/101
(id
が101
のemp
リソースのアイテムに対するリクエストに一致)や/objects/emp/
(:id
パラメータにid
パラメータがオプションであることを示す?
修飾子の注釈があるのでemp
リソースに対するリクエストに一致)にも一致します。
ルート・パターンの詳細な説明は、<sqldeveloper-install>\ords
およびOracle REST Data Servicesを手動でインストールした場所(存在する場合)の下にあるdocs\javadoc\plugin-api\route-patterns.html
を参照してください。
URIテンプレート: 所定のリソース・テンプレートが処理可能な特定のURIパターンを定義する簡易文法。たとえば、employees/{id}
というパターンは、パスがemployees/
で始まる任意のURI (employees/2560
など)に一致します。
リソース・ハンドラ: 特定のリソース・テンプレートで特定のHTTPメソッドのサービスを行うために必要なロジックを提供します。たとえは、前のリソース・テンプレートでGET HTTPメソッドを行うためのロジックは次のようになります。
select empno, ename, dept from emp where empno = :id
HTTP操作: HTTP (HyperText Transport Protocol)により、GET
(リソース内容の取得)、POST
(新規リソースの格納)、PUT
(既存のリソースの更新)およびDELETE
(リソースの削除)という、リソースで実行可能な標準メソッドが定義されます。
SQL DeveloperでRESTfulサービス機能を使用するには、Oracle REST Data Services 3.0をインストールして実行する必要があります。
Oracle REST Data Servicesの「インストール」ウィザードを使用して、Oracle REST Data Servicesをスタンドアロン・モードでインストールし実行することができます。Oracle REST Data Servicesのインストール/実行ウィザードの詳細を参照してください。
Oracle REST Data Servicesのインストーラはコマンドラインから実行できます。コマンドライン・インタフェースの使用方法の詳細は、Oracle REST Data Servicesインストレーション、構成および開発ガイドを参照してください。
Oracle REST Data Services RESTfulサービスおよびOracle Application Express RESTfulサービスについて次の点に注意してください。
Oracle REST Data Service RESTful Servicesを使用するには、RESTfulサービス用のスキーマを有効にする必要があります。RESTful Services用のスキーマを有効化する方法については、「RESTfulサービス・ウィザード(RESTアクセスを自動で有効化)」の「詳細の指定」ページを参照してください。
接続を作成するときに、「スキーマ/ワークスペース」フィールドにスキーマ別名を指定します。スキーマ別名は、RESTful Services用のスキーマを有効化したときに指定した「スキーマ別名」の名前です。接続の設定の詳細は、「RESTfulサービス接続」を参照してください。
Oracle Application Express RESTfulサービスを使用するには、Application RESTfulサービスの設定の詳細を、『Oracle Application Express管理ガイド』で参照してください。
REST開発ペイン(ビュー、「RESTfulサービス」、「開発環境」の順にクリックします)では、次の操作が可能です。
RESTfulサービスに接続情報を指定します。
すべてのRESTfulサービス(すべてのリソース・モジュールおよび権限を含む)を取得するか、選択したリソース・モジュールまたは権限を取得します。
リソース・モジュール、リソース・テンプレート、リソース・ハンドラおよび権限を作成、編集および削除します。
リソース・モジュールおよび権限を更新し、結果をサーバーに保存します。
RESTfulサービス定義を含む.zipファイルを開きます。
RESTfulサービス定義を.zipファイルに保存します。
「RESTfulサービス」ペインには次の操作を行うアイコンがあります。
RESTfulサービス: リソース・モジュールおよび権限を含むことのできる新規「RESTfulサービス」管理を作成します。
RESTfulサービスの取得: リソース・モジュールおよび権限をダウンロードします。(「RESTfulサービス」接続に接続すると有効になります。)
RESTfulサービスの検証: すべてのリソース・モジュールのテンプレートおよびハンドラを検証し、警告およびエラー・メッセージを表示します。(ナビゲータ・ツリーに1つ以上のモジュールまたは権限が含まれている場合に有効になります。)
接続: 「RESTfulサービス」接続を選択するか、新規「RESTfulサービス」接続を作成します。
「RESTful Services」ノードを右クリックして関連するアイコンで操作を行った上で、次の操作を行います。
Connect: ユーザーの資格証明に基づき、有効化されたRESTful ServicesスキーマまたはApplication Expressワークスペースに接続します。接続を設定するには、「RESTfulサービス接続」を参照してください。
切断: ユーザーのスキーマまたはワークスペースから切断します。
新規RESTfulサービス: リソース・モジュールおよび権限を含む新規「RESTfulサービス」管理を作成します。
RESTfulサービスの取得: ユーザーのスキーマまたはワークスペースからリソース・モジュールおよび権限をダウンロードします。(「RESTfulサービス」接続に接続すると有効になります。)
ファイルを開く: リソース・モジュールおよび権限を含む.zipファイルを開き、「RESTfulサービス管理」にロードします。
別名保存: リソース・モジュールおよび権限を含む.zipファイルを作成します。(ナビゲータ・ツリーに1つ以上のモジュールまたは権限が含まれている場合に有効になります。)