HTML5表單可提交至AEM中託管的servlet。 提交資料可在servlet中作為輸入資料流存取。 若要提交HTML5表單,您必須使用AEM Forms Designer在表單範本上新增「HTTP提交按鈕」
可以建立簡單的servlet來處理HTML5表單提交。 然後可以使用以下程式碼擷取提交的資料。 這個 servlet 在本教學課程中可供您使用。 請安裝 servlet 使用 封裝管理員
第9行的程式碼可用來叫用J2EE程式。 請確定您已設定 AdobeLiveCycle使用者端SDK設定 如果您要使用程式碼來叫用J2EE程式。
StringBuffer stringBuffer = new StringBuffer();
String line = null;
java.io.InputStreamReader isReader = new java.io.InputStreamReader(request.getInputStream(), "UTF-8");
java.io.BufferedReader reader = new java.io.BufferedReader(isReader);
while ((line = reader.readLine()) != null) {
stringBuffer.append(line);
}
System.out.println("The submitted form data is " + stringBuffer.toString());
/*
* java.util.Map params = new java.util.HashMap();
* params.put("in",stringBuffer.toString());
* com.adobe.livecycle.dsc.clientsdk.ServiceClientFactoryProvider scfp =
* sling.getService(com.adobe.livecycle.dsc.clientsdk.
* ServiceClientFactoryProvider.class);
* com.adobe.idp.dsc.clientsdk.ServiceClientFactory serviceClientFactory =
* scfp.getDefaultServiceClientFactory(); com.adobe.idp.dsc.InvocationRequest ir
* = serviceClientFactory.createInvocationRequest("Test1/NewProcess1", "invoke",
* params, true);
* ir.setProperty(com.adobe.livecycle.dsc.clientsdk.InvocationProperties.
* INVOKER_TYPE,com.adobe.livecycle.dsc.clientsdk.InvocationProperties.
* INVOKER_TYPE_SYSTEM); com.adobe.idp.dsc.InvocationResponse response1 =
* serviceClientFactory.getServiceClient().invoke(ir);
* System.out.println("The response is "+response1.getInvocationId());
*/
這個 文章 建議從HTML5表單提交產生PDF時一併執行。