在本部分,我們將啟動代理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行:從request參數取得accountnumber
第2-8行:建立參數映射並設定適當的鍵和值以反映documentId、Random。
第9-10行:建立另一個映射對象以保存在「表單資料模型」中定義的輸入參數。
第11行:設定slingRequest屬性"paramMap"
第12-13行:將請求轉送至servlet
在伺服器上測試此功能
請確定您的表單資料模型的Get操作輸入參數系結至稱為「accountnumber」的請求屬性,以便運作。 如果將綁定值的名稱更改為任何其他名稱,請確保在POST.jsp的第25行上反映該更改