アダプティブフォームでは、フォームデータを異なるエンドポイントやワークフローに送信する際に、あらかじめ用意されたいくつかの送信アクションを使用できます。この記事では、コンテンツ保存の送信アクションを使用して JCR リポジトリにフォームデータを保存する方法を説明します。また、PDF 保存の送信アクションの仕組みを説明します。

JCR リポジトリへのコンテンツの保存

コンテンツ保存のアクションは、送信時のアクションのひとつで、JCR リポジトリにフォームデータを保存するときに使用することができます。アダプティブフォームでコンテンツ保存のアクションを設定すると、フォーム送信時に、設定済みのコンテンツ保存のパスに JCR ノードのプロパティとしてフォームのフィールド値が保存されます。このデータは XML にも取り込まれ、ノード上で jcr:data プロパティとして保存されます。

XFA または XSD に基づいたアダプティブフォームの場合、連結されていないフィールドのみがノード上のプロパティとして保存されます。アダプティブフォームの添付ファイルは子ノードとして保存されます。各ファイル添付のコンポーネントに子ノードが作成され、それぞれ対応する子コンポーネントノードの下にファイルが保存されます。

データが保存されると、設定済みの「ありがとうございます」ページにユーザーはリダイレクトされます。「ありがとうございます」ページが設定されていない場合、ユーザーは初期設定の「ありがとうございます」ページにリダイレクトされます。新しく作成されたノードへのパスは、「ありがとうございます」ページで URL パラメーターとして渡されます。

送信されたフォームデータのノード構造
送信されたフォームデータのノード構造

フォーム送信で作成されたノードのプロパティ
ノードのプロパティ

コンテンツ保存パスの設定

コンテンツ保存の送信アクションではコンテンツ保存のパスを設定する必要があります。これはデータが保存される必要のあるリポジトリのノードを参照します。これは、アダプティブフォーム上部のアダプティブフォームの開始ダイアログから設定することができます。

コンテンツ保存パスの送信アクションの設定
コンテンツ保存パスの送信アクションの設定

コンテンツ保存パスの仕様

コンテンツ保存パスを設定するときは、次の点に注意してください。

  • ユーザーが送信するデータにおいて、コンテンツ保存パスとして指定された親フォルダーに add_node 権限が設定されていること。この記事の例では、/content/usergenerated/content/forms/af/HMRCDemo が親フォルダーです。HMRCDemo フォルダーが addChildNodes の権限を持っていること。この権限は親フォルダーのいずれかの上位ノードから継承することができます。
  • パスが/で終わる場合、設定されたコンテンツ保存パスの下に固有のノードが作成され、データはその固有のノードに保存されます。
    パスが/で終わらない場合、データは設定されたパスでノードに保存されます。固有のノードは生成されません。
  • コンテンツ保存パスが参照するノードが、sling:folder のタイプを持つこと。例えば、この例では、HMRCDemosling:folder のタイプを持ちます。
コンテンツ保存の送信アクション用に設定された保存パスのノード
保存パスのノード

コンテンツ保存の送信アクション用の保存パスのノードの ACL
保存パスのノードの ACL

注意:

公開先として同一の作成者ノードに複数の公開ノードがリンクされ、クラスター化されていない場合、ある公開ノードに送信されたデータは、別の公開ノードでは使用できません。このような場合、作成者インスタンスに関連付けられたリバースレプリケーションエージェントを設定する必要があります。これにより送信済みノードのパブリッシュで、すべてのパブリッシュインスタンスが確実に作成者インスタンスにリンクされます。リバースアプリケーションエージェントの設定について詳しくは、http://dev.day.com/docs/en/cq/current/deploying/replication.html を参照してください。

PDF 保存の送信アクション

PDF 保存の送信アクションは、AEM forms のアドオンパッケージの一部として使用できます。これは XFA に基づいたアダプティブフォームにのみ適用されます。ノードにデータを保存するほか、PDF 保存の送信アクションはフォームデータを XDP に結合して、設定されたコンテンツ保存パスで PDF を生成および保存します。PDF への署名時に、Adobe Echosign を使用するようにフォームが設定されている場合、設定されたノードに子ノードとして署名済みの PDF が保存されます。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー