16 データ・キャッシュおよびオフライン・サポートの構成

Oracle Offline Persistence Toolkitを使用して、Oracle JETアプリケーション内のデータのキャッシュ処理およびオフライン・サポートを有効にします。

Oracleオフライン永続性ツールキットについて

ツールキットは、Oracleがオープンソース・プロジェクトとして管理するクライアント側JavaScriptライブラリです。このツールキットは、HTTPリクエスト・レイヤーでのキャッシュ処理およびオフライン・サポートを提供します。

このサポートはユーザーに対して透過的であり、フェッチAPIおよびXHRアダプタを介して行われます。クライアントまたはクライアント・デバイスがオフラインのときに作成されたHTTPリクエストは、サーバーへの接続が回復したときに、リプレイのために取得されます。追加機能には、永続ストレージ・レイヤー、同期マネージャ、バイナリ・データのサポート、およびデフォルトの動作をカスタマイズするための様々な構成APIが含まれています。このツールキットは、Webアプリケーション内におけるServiceWorkerコンテキストと非ServiceWorkerコンテキストの両方で使用できます。

このツールキットを使用すると、次のことを行うようにアプリケーションを構成できます:

  • 接続が使用できない場合にオフライン読取り用のコンテンツをダウンロードします。

    たとえば、接続が使用できない顧客サイトで営業担当者がダウンロードして読み取ることができる製品在庫データをアプリケーションに含めることができます。

  • パフォーマンスを向上させるためにコンテンツをキャッシュします。

  • 接続が使用できない場合に、ダウンロードしたコンテンツのトランザクションを実行し、接続が回復したときにトランザクションをアップロードします。

    たとえば、インターネット・アクセスができないサイトを営業担当者が閲覧して、いくつかの製品品目の受注を入力できます。接続が回復したときに、アプリケーションはサーバーにトランザクションを自動的に送信できます。

  • オフライン・データがサーバーとマージできないときに競合解決を提供します。

    営業担当者のリクエストが対応可能な在庫量を超えている場合、アプリケーションは、受注を取り消すかその品目をバック・オーダーとして処理することを営業担当者に求めるメッセージを構成できます。

このアーキテクチャの図は、ツールキットの主要なコンポーネントと、アプリケーションがツールキットとどのように相互作用するかを示しています。

オフライン永続性ツールキットのインストール

npmを使用して、オフライン永続性ツールキットをインストールします。インストール後、アプリケーションのsrc/js/path_mapping.jsonファイルを更新して新規パッケージを認識させる必要があります。

  1. アプリケーションの最上位ディレクトリに移動し、ターミナル・ウィンドウを開きます。
  2. ターミナル・プロンプトで次のコマンドを入力してツールキットをインストールします: npm install @oracle/offline-persistence-toolkit --save
  3. アプリケーションのsrc/jsディレクトリに移動し、path_mapping.jsonを編集するために開きます。
  4. 永続性ツールキットを"libs"のエントリに追加します。

    最も簡単なツールキットの追加方法は、対象のライブラリと類似する既存のエントリをコピーして必要に応じて変更することです。次に、"ojs"エントリのコピーを使用して開始した、offline-persistence-toolkitのサンプル・エントリを示します。

    "libs": {
    
        "offline-persistence-toolkit": {
          "cdn": "",
          "cwd": "node_modules/@oracle/offline-persistence-toolkit/dist",
          "debug": {
            "cwd": "debug",
            "src": ["**"],
            "path": "libs/offline-persistence-toolkit/debug",
            "cdn": ""
          },
          "release": {
            "cwd": "min",
            "src": ["**"],
            "path": "libs/offline-persistence-toolkit/min",
            "cdn": ""
          }
    },

Oracle JETアプリケーションにインストールした後のツールキットの使用の詳細は、Github (https://github.com/oracle/offline-persistence-toolkit)で、永続性ツールキットのREADME.mdとWikiを参照してください。