17.4.1 RESTデータ・ソースの理解

RESTデータ・ソースにより、開発者はアプリケーションでRepresentational State Transfer (REST)サービスまたは汎用JSONデータ・フィードにアクセスし、そのデータをOracle APEXコンポーネントで使用できます。

17.4.1.1 RESTデータ・ソースについて

RESTデータ・ソースを使用して、アプリケーションでRESTサービスまたは汎用JSONデータ・フィードにアクセスし、そのデータをOracle APEXコンポーネントで使用します。

Oracle APEXでは、クラシック・レポート、対話モード・レポート、CSSカレンダおよびJETチャートにRESTデータ・ソースを直接統合できます。1つのRESTデータ・ソースに、具体的な外部Webサービスへの参照である操作を1つ以上含めることができます。RESTソース・レベルの構成は、含まれるすべての操作で共有されます。

Oracle APEXでは、次の組込みRESTデータ・ソース・タイプがサポートされています。

  • 簡易HTTP: 単純なHTTPデータ・フィードの場合は、このオプションを選択します。Oracle APEXでは、すべてのデータは最初のリクエストで返され、サーバーはサーバー側のフィルタ、順序付けまたはその他の拡張RESTサービス機能をサポートしないと想定されます。呼出しの詳細とパラメータはすべて手動で構成する必要があります。

  • Oracle REST Data Services: Oracle REST Data Services (ORDS)を示します。これらのRESTサービスはOracle REST標準に準拠しており、GETPOSTPUT,またはDELETE操作が標準化されています。サーバー側フィルタリングと順序付けがサポートされます。Oracle APEXでは、レポートの並替え基準およびフィルタをRESTサービスに委任することで、これらの機能を利用できます。

  • REST対応SQL問合せ: REST対応SQL参照で実行されるSQL問合せに基づいてRESTソースを示します。Oracle APEXでは、フィルタ処理およびページ区切りがサポートされますが、これらのエンドポイントではDMLはサポートされません。

  • Oracle Cloud Applications (SaaS) REST Service: Oracle Cloud SaaS Applicationsによって提供されるRESTful Webサービスを示します。このWebサービス・タイプを使用して、Oracle SaaS REST ServicesをOracle APEXアプリケーションに統合します。Oracle APEXでは、これらのサービスに対してページ区切りがサポートされます。

  • Oracle Cloud Infrastructure (OCI) REST Service: Oracle Cloud Infrastructureによって提供されるRESTful Webサービスを示します。このWebサービス・タイプを使用して、OCI REST Service (オブジェクト・ストアへのアクセスなど)をOracle APEXアプリケーションに統合します。Oracle APEXでは、これらのサービスに対してページ区切りがサポートされます。

17.4.1.2 RESTデータ・ソースとレガシーWebサービス参照の違い

RESTデータ・ソースとレガシーWebサービス参照の相違点について説明します。

レガシーWebサービス参照とは異なり、RESTデータ・ソースには、サービスを起動したりレスポンスを処理するためにAPEXコンポーネントまたはPL/SQLプロセスで使用できるWebサービスに関するメタデータが含まれます。

RESTデータ・ソースには、Webサービスのターゲットに応じて異なる複数の演算子が含まれています。RESTサービスの場合、操作は、特定のサービス・ハンドラ(GETPUTPOSTDELETEなど)になります。開発者は、操作にFetch Multiple RowsFetch Single RowInsert RowUpdate RowDelete Rowなどのデータベース・アクションを割り当てます。ただし、各データベース操作をRESTデータ・ソース操作に割り当てることができるのは1回のみです。

17.4.1.3 RESTデータ・ソースでの認証および資格証明について

RESTデータ・ソースでサポートされている認証タイプおよび資格証明について説明します。

RESTデータ・ソースでは、様々な認証タイプがサポートされています。認証資格証明は、リモート・サーバーを使用するすべてのRESTデータ・ソースを対象としてリモート・サーバー・レベルで指定できます。資格証明をRESTデータ・ソース・レベルで設定した場合、その設定は、リモート・サーバー・レベルで格納されている資格証明よりも優先されます。

資格証明は、認証方式、クライアントID (ユーザー名)およびクライアント・シークレット(パスワード)を示します。資格証明は、「共有コンポーネント」内に名前付きエンティティとして格納され、複数のRESTデータ・ソースまたはリモート・サーバー間で再利用できます。