POST 送信時にエージェント UI を開く
ここでは、フォーム送信時にアドホック通信を作成するエージェント UI インターフェイスを起動します。
この記事では、フォームを送信する際に、エージェント UI インターフェイスを開く手順について説明します。 一般的な使用例は、カスタマーサービスエージェントがフォームに入力パラメーターを入力し、フォーム送信時に、フォームデータモデル事前入力サービスから事前入力されたデータでエージェント UI が開かれることです。フォームデータモデル事前入力サービスへの入力パラメーターは、フォーム送信から抽出されます。
次のビデオでは、使用例を示します
String accountNumber = request.getParameter("accountnumber"))
ParameterMap parameterMap = new ParameterMap();
RequestParameter icLetterId[] = new RequestParameter[1];
icLetterId[0] = new FormFieldRequestParameter("/content/dam/formsanddocuments/retirementstatementprint");
parameterMap.put("documentId", icLetterId);
RequestParameter Random[] = new RequestParameter[1];
Random[0] = new FormFieldRequestParameter("209457");
parameterMap.put("Random", Random);
Map map = new HashMap();
map.put("accountnumber",accountNumber);
slingRequest.setAttribute("paramMap",map);
CustomParameterRequest wrapperRequest = new CustomParameterRequest(slingRequest,parameterMap,"GET");
wrapperRequest.getRequestDispatcher("/aem/forms/createcorrespondence.html").include(wrapperRequest, response);
行 1:requestparameter から accountnumber を取得しします。
行 2~8:パラメーターマップを作成し、適切なキーと値を設定して documentId、Random を反映させます。
行 9~10:フォームデータモデルで定義された入力パラメーターを格納する別の Map オブジェクトを作成します。
行 11:slingRequest 属性「paramMap」を設定します。
行 12~13:リクエストをサーブレットに転送します。
ご使用のサーバーでこの機能をテストするには、次を行います。
- パッケージマネージャーを使用して、この記事に関連するアセットを読み込んでインストールします。
- configMgr にログイン
- Adobe Granite CSRF フィルター を検索します。
- 除外パスに /content/getprintchannel を追加します
- 変更を保存します。
- POST.jsp を開きます。FormFieldRequestParameter に渡された文字列が有効な documentId であることを確認します。(行 19)。
- Web ページを開いて 「 accountnumber 」と入力し、フォームを送信します。
- エージェント UI インターフェイスが開き、フォームに入力されたアカウント番号に応じたデータが事前に入力されます。
NOTE
フォームデータモデルの Get 操作の入力パラメーターが、これが機能するために、「accountnumber」と呼ばれるリクエスト属性にバインドされていることを確認します。 bindingvalue の名前を他の名前に変更する場合は、その変更が POST.jsp の 25 行目に反映されていることを確認してください。
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e