Rellenar previamente HTML5 Forms mediante el atributo de datos prepopulate-html-forms-using-data-attribute
Las plantillas XDP procesadas en formato HTML mediante AEM Forms se denominan HTML5 o Mobile Forms. Un caso de uso común es rellenar previamente estos formularios cuando se están procesando.
Existen dos formas de combinar los datos con la plantilla xdp cuando se representan como HTML.
dataRef: puede usar el parámetro dataRef en la dirección URL. Este parámetro especifica la ruta absoluta del archivo de datos que se combina con la plantilla. Este parámetro puede ser una URL a un servicio REST que devuelva los datos en formato XML.
data: este parámetro especifica los bytes de datos codificados UTF-8 que se combinan con la plantilla. Si se especifica este parámetro, el formulario HTML5 ignorará el parámetro dataRef. Como práctica recomendada, recomendamos utilizar el enfoque de datos.
El método recomendado es establecer el atributo de datos en la solicitud con los datos con los que desea rellenar previamente el formulario.
slingRequest.setAttribute("data", contenido);
En este ejemplo, configuramos el atributo de datos con el contenido. El contenido representa los datos con los que desea rellenar previamente el formulario. Normalmente, recuperaría el "contenido" realizando una llamada de REST a un servicio interno.
Para aplicar este caso de uso, debe crear un perfil personalizado. Los detalles sobre cómo crear un perfil personalizado están claramente documentados en Documentación de AEM Forms aquí.
Una vez creado el perfil personalizado, creará un archivo JSP que recuperará los datos realizando llamadas a su sistema back-end. Una vez recuperados los datos, utilizará slingRequest.setAttribute("data", content); para rellenar previamente el formulario
Cuando se procesa el XDP, también puede pasar algunos parámetros al xdp y, en función del valor del parámetro, puede recuperar los datos del sistema backend.
Por ejemplo, esta dirección URL tiene un parámetro de nombre
El JSP que escriba tendrá acceso al parámetro name mediante request.getParameter("name") A continuación, puede pasar el valor de este parámetro al proceso backend para recuperar los datos necesarios.
Para que esta capacidad funcione en su sistema, siga los pasos que se mencionan a continuación:
-
Descargar e importar los recursos en AEM mediante el administrador de paquetes
El paquete instalará lo siguiente- CustomProfile
- XDP de muestra
- Extremo de POST de muestra que devolverá datos para rellenar el formulario
- Apunta tu navegador favorito a esta URL. El formulario debe rellenarse previamente con el valor del parámetro name