フォームデータモデルの作成

データ統合

Experience Manager Forms のデータ統合機能には、フォームデータモデルを作成して使用するための直感的なユーザーインターフェイスが用意されています。フォームデータモデルでは、データソースを使用してデータが交換されますが、データソースを使用せずにフォームデータモデルを作成することも、設定済みのデータソースを使用してフォームデータモデルを作成することもできます。フォームデータモデルを作成する方法には、以下の 2 つがあります。データソースが既に設定されているかどうかに応じて、いずれかの方法を選択してください。

  • 事前に設定されたデータソースを使用する場合:「データソースの設定」の説明に従ってデータソースが既に設定されている場合は、フォームデータモデルを作成する際に、それらのデータソースを選択できます。この方法の場合、選択したデータソースのすべてのデータモデルオブジェクト、プロパティ、サービスをフォームデータモデル内で使用することができます。

  • データソースが設定されていない場合:フォームデータモデル用のデータソースが設定されていない場合であっても、データソースを使用することなくフォームデータモデルを作成することができます。フォームデータモデルを使用して、アダプティブフォームを作成し、サンプルデータを使用してテストを行うことができます。データソースが使用可能な状態になっている場合は、フォームデータモデルをそのデータソースに連結すると、関連するアダプティブフォーム内でその連結内容が自動的に反映されます。

メモ

フォームデータモデルの作成と操作を行うには、fdm-author グループと forms-user グループのメンバーである必要があります。これらのグループのメンバーになるには、Experience Manager の管理者に依頼してください。

フォームデータモデルの作成

フォームデータモデル内で使用するデータソースが、「データソースの設定」の説明に従って正しく設定されていることを確認してください。設定されているデータソースに基づいてフォームデータモデルを作成するには、以下の手順を実行します。

  1. Experience Manager オーサーインスタンスで、フォーム/データ統合​に移動します。

  2. 作成/フォームデータモデル​の順にタップします。

  3. フォームデータモデルの作成ダイアログで、以下の操作を実行します。

    • フォームデータモデルの名前を指定します。
    • 任意)フォームデータモデルのタイトル、説明、タグを指定します。
    • 任意、データソースが既に設定されている場合のみ)「データソース設定」の横にあるチェックマークアイコンをタップし、使用するデータソース用のクラウドサービスが存在する設定ノードを選択します。この操作により、選択した設定ノード内の有効なデータソースだけが、以下のページに選択可能なデータソースとして表示されます。ただし、どの Experience Manager ユーザープロファイルのデータソースも、デフォルトで表示されます。設定ノードを選択しなかった場合、すべての設定ノード内のデータソースが表示されます。
  4. 次へ」をタップします。

  5. データソースが既に設定されている場合のみ)「データソースを選択」画面に、使用可能なデータソースが表示されます(有効なデータソースが存在する場合)。フォームデータモデルで使用するデータソースを選択します。

  6. 作成」をタップし、確認ダイアログで「開く」をタップして、フォームデータモデルエディターを開きます。

    ここで、フォームデータモデルエディターの UI に表示される各種コンポーネントを確認します。

    RESTful サービス、Experience Manager ユーザープロファイル、RDBMS の 3 つのデータソースが含まれているフォームデータモデル

    A. データソース フォームデータモデルのデータソースをリストします。データソースを展開すると、データモデルオブジェクトとサービスが表示されます。

    B. データソース定義を更新 データソース定義内の変更内容が設定済みデータソースから取得され、フォームデータモデルエディターの「データソース」タブでその変更内容が反映されます。

    C. モデル 追加されたデータモデルオブジェクトのコンテンツ領域が表示されます。

    D. サービス 追加したデータソースの操作やサービスのコンテンツ領域が表示されます。

    E. ツールバー フォームデータモデルを操作するためのツールです。選択したフォームデータモデルのオブジェクトに応じて、追加のオプションがツールバーに表示されます。

    F. 選択 選択したデータモデルオブジェクトとサービスをフォームデータモデルに追加します。

フォームデータモデルエディターの詳細と、フォームデータモデルエディターを使用してフォームデータモデルの編集と設定を行う方法については、「フォームデータモデルの操作」を参照してください。

データソースの更新

既存のフォームデータモデルにデータソースを追加するには(または、既存のフォームデータモデルのデータソースを更新するには)、以下の手順を実行します。

  1. フォーム/データ統合​に移動し、データソースを追加または更新するフォームデータモデルを選択して、「プロパティ」をタップします。

  2. フォームデータモデルのプロパティで、「ソースを更新」タブに移動します。

    ソースを更新」タブで、以下の操作を実行します。

    • コンテキスト対応設定」フィールドで参照アイコンをタップし、追加するデータソースのクラウド設定が存在する設定ノードを選択します。ノードを選択しなかった場合、「ソースを追加」をタップすると、global ノード内のクラウド設定だけが表示されます。

    • 新しいデータソースを追加する場合は、「ソースを追加」をタップし、フォームデータモデルに追加するデータソースを選択します。global ノード内で設定されているデータソースと、選択した設定ノード内で構成されているデータソースが、すべて表示されます。

    • 既存のデータソースを、同じタイプの別のデータソースで置き換える場合は、置き換え前のデータソースの「編集」アイコンをタップし、有効なデータソースのリストで、置き換え後のデータソースを選択します。

    • 既存のデータソースを削除する場合は、目的のデータソースの「削除」アイコンをタップします。データソース内のデータモデルオブジェクトがフォームデータモデルに追加されている場合、「削除」アイコンは無効になります。

      fdm-properties

  3. 保存して閉じる」をタップして、変更内容を保存します。

メモ

フォームデータモデルに新しいデータソースを追加したら(または、フォームデータモデル内の既存のデータソースを更新したら)、更新後のフォームデータモデルが使用されるアダプティブフォームで、連結参照を適切に更新する必要があります。

特定の実行モードのコンテキスト対応設定

フォームデータモデルは、Sling のコンテキストに対応した設定を利用して、異なるデータソースパラメーターをサポートし、異なる Experience Manager 実行モードのデータソースと接続します。

フォームデータモデルがクラウド設定を使用してパラメーターを保存する場合、この設定をチェックインしてソース管理(Cloud-Manager GIT リポジトリー)を通じてデプロイすると、すべての実行モード(開発、ステージ、実稼動)で同じパラメーターを持つクラウド設定が作成されます。ただし、テスト環境と実稼動環境で異なるデータセットを使用する必要があるユースケースの場合は、異なる Experience Manager 実行モード用のデータソースパラメーター(データソース URL など)を使用します。

これを行うには、データソースのパラメーターと値のペアを含む OSGi 設定を作成する必要があります。この設定は、実行時にフォームデータモデルクラウド設定の同じペアを上書きします。OSGi 設定はデフォルトでこれらの実行モードをサポートしているので、実行モードに基づいてデータソースパラメーターを異なる値に上書きできます。

フォームデータモデルでデプロイメント固有のクラウド設定を有効にする手順は次のとおりです。

  1. 開発用ローカルインスタンスにクラウド設定を作成します。詳細な手順については、データソースの設定方法を参照してください。

  2. クラウド設定をファイルシステムに保存します。

    1. フィルター /conf/{foldername}/settings/cloudconfigs/fdm を使用してパッケージを作成します。手順 1 と同じ {foldername} を使用します。Azure ストレージ設定用に、fdmazurestorage で置き換えます。
    2. パッケージを構築してダウンロードします。詳しくは、パッケージのアクションを参照してください。
  3. クラウド設定を Experience Manager アーキタイププロジェクトに統合します。

    1. ダウンロードしたパッケージを解凍します。
    2. jcr_root フォルダーをコピーして、ui.contentsrcmaincontent に置きます。
    3. ui.contentsrcmaincontentMETA-INFvaultfilter.xml を更新して、フィルター /conf/{foldername}/settings/cloudconfigs/fdm を含めます。詳しくは、AEM プロジェクトアーキタイプの ui.content モジュールを参照してください。このアーキタイププロジェクトを CM パイプラインを通じてデプロイする場合、同じクラウド設定がすべての環境(または実行モード)にインストールされます。環境に基づいてクラウド設定のフィールド(URL など)の値を変更するには、次の手順で説明する OSGi 設定を使用します。
  4. Apache Sling のコンテキスト対応設定を作成します。OSGI 設定の作成手順は次のとおりです。

    1. アーキタイププロジェクトの OSGi 設定ファイルをセットアップExperience Managerします。
      OSGi Factory Configuration ファイルを、PID
      org.apache.sling.caconfig.impl.override.OsgiConfigurationOverrideProvider を使用して作成します。実行モードごとに値を変更する必要がある各実行モードフォルダーの下に、同じ名前のファイルを作成します。詳しくは、 Adobe Experience Manager の OSGi の設定を参照してください。

    2. OSGI 設定 json を設定します。 Apache Sling Context-Aware Configuration Override Provider の使用手順は次のとおりです。

      1. ローカル開発インスタンス /system/console/configMgr で、Apache Sling Context-Aware Configuration Override Provider: SGi configuration という名前のファクトリー OSGi 設定を選択します。
      2. 説明を入力します。
      3. 有効」を選択します。
      4. オーバーライドで、Sling オーバーライド構文の環境に基づいて変更する必要があるフィールドを指定します。詳しくは、Apache Sling Context-Aware Configuration - Override を参照してください。例:cloudconfigs/fdm/{configName}/url="newURL"。複数のオーバーライドを追加するには、「+」を選択します。
      5. 保存」を選択します。
      6. OSGi 設定 JSON を取得するには、AEM SDK Quickstart を使用した OSGi 設定の生成の手順に従ってください。
      7. 前の手順で作成した OSGi Factory Configuration ファイルに JSON を配置します。
      8. 環境(または実行モード)に基づいて newURL の値を変更します。
      9. 実行モードに応じてシークレット値を変更するには、Cloud Manager API を使用してシークレット変数を作成し、後で OSGi 設定から参照することができます。
        このアーキタイププロジェクトが CM パイプラインを通じてデプロイされる場合、オーバーライドは異なる環境(または実行モード)で異なる値を提供します。
      メモ

      サービスパック 6.5.13.0 でコンテキスト対応設定が利用可能になった後、Adobe Managed Service ユーザーは暗号化サポートを使用してシークレットの値を暗号化し(詳細は、設定プロパティの暗号化サポートを参照)、値に暗号化テキストを配置できるようになりました。

  5. フォームデータモデルエディターのデータソース定義を更新するオプションを使用してデータソース定義を更新し、FDM UI を通じて FDM キャッシュを更新し、最新の設定を取得します。

次の手順

これで、データソースが追加されたフォームデータモデルが作成されました。この状態で、フォームデータモデルを編集してデータモデルオブジェクトとサービスの作成と設定を行ったり、データモデルオブジェクト間の関連付けを行ったり、プロパティを編集したり、カスタムのデータモデルオブジェクトとプロパティを追加したり、サンプルデータを生成したりできます。

詳しくは、「フォームデータモデルの操作」を参照してください。

このページ