フォームデータモデルを使用したバイナリデータの投稿 using-form-data-model-to-post-binary-data
AEM Forms 6.4 以降、AEM ワークフローのステップとしてフォームデータモデルサービスを呼び出すことができるようになりました。この記事では、フォームデータモデルサービスを使用してレコードのドキュメントを投稿する場合のサンプルのユースケースについて説明します
ユースケースを次に示します。
- ユーザーがアダプティブフォームに入力して送信します。
- アダプティブフォームは、レコードのドキュメントを生成するように設定されています。
- このアダプティブフォームの送信時に、AEM ワークフローがトリガーされ、フォームデータモデルサービスの呼び出しを使用して、レコードのドキュメントを AEM DAM に投稿します。
「フォームデータモデル」タブ - プロパティ
「サービス入力」タブで、以下をマッピングします
-
ペイロードに関連する DOR.pdf プロパティを持つファイル(保存する必要があるバイナリオブジェクト)。つまり、アダプティブフォームが送信されると、生成されたレコードのドキュメントが、ワークフローペイロードに関連する DOR.pdf と呼ばれるファイルに保存されます。この DOR.pdf が、アダプティブフォームの送信プロパティを設定する際に指定した DOR.pdf と同じであることを確認します。
-
fileName - DAM にバイナリオブジェクトを保存する際の名前です。したがって、各 fileName が送信ごとに一意になるように、このプロパティを動的に生成する必要があります。この目的のために、ワークフローのプロセスステップを使用して filename と呼ばれるメタデータプロパティを作成し、その値をフォームを送信するユーザーのメンバー名とアカウント番号の組み合わせに設定しました。例えば、そのユーザーのメンバー名が John Jacobs で、アカウント番号が 9846 の場合、ファイル名は John Jacobs_9846.pdf になります
サービス入力
サーバーでこの機能をテストするには、以下の手順に従ってください。
1.Developingwithserviceuser バンドルをデプロイします
-
setvalue バンドルをダウンロードしてデプロイします。このカスタム OSGi バンドルは、メタデータプロパティの作成と、送信されたフォームデータからのその値の設定に使用されます。
-
パッケージマネージャーを使用して、AEM にこの記事に関連するアセットを読み込みます。次のようになります。
- ワークフローモデル
- AEM ワークフローに送信するように設定されたアダプティブフォーム
- PostToDam.JSON ファイルを使用するように設定されたデータソース
- データソースを使用するフォームデータモデル
-
ブラウザーでアダプティブフォームを開くように指定します
-
フォームに入力して送信します。
-
レコードのドキュメントが作成されて保存されているかどうか、アセットアプリケーションを確認します。
データソースの作成に使用する Swagger ファイルを参照用に入手できます