Desarrollo con Output y Forms Services en AEM Forms

Uso de la API de Output y Forms Service en AEM Forms

En este artículo echaremos un vistazo a lo siguiente

  • Servicio de salida : normalmente este servicio se utiliza para combinar datos xml con plantillas xdp o pdf para generar pdf plano. Para obtener más información, consulte esta javadoc para el servicio Output .
  • FormsService : se trata de un servicio muy versátil que le permite exportar e importar datos desde y hacia un archivo PDF. Para obtener más información, consulte esta javadoc para el servicio Forms.

El siguiente fragmento de código exporta datos desde el archivo PDF

javax.servlet.http.Part pdfPart = request.getPart("pdffile");
String filePath = request.getParameter("saveLocation");
java.io.InputStream pdfIS = pdfPart.getInputStream();
com.adobe.aemfd.docmanager.Document pdfDocument = new com.adobe.aemfd.docmanager.Document(pdfIS);
com.adobe.fd.forms.api.FormsService formsservice = sling.getService(com.adobe.fd.forms.api.FormsService.class);
com.adobe.aemfd.docmanager.Document xmlDocument = formsservice.exportData(pdfDocument,com.adobe.fd.forms.api.DataFormat.Auto);

La línea 1 extrae el archivo pdffile de la solicitud

Line2 extrae saveLocation de la solicitud

Línea 5 obtiene la retención de FormsService

La línea 6 exporta el xmlData desde el archivo PDF

Para probar el paquete de muestra en el sistema

Descargue e instale el paquete mediante el administrador de paquetes de AEM

Después de instalar el paquete tendrá que lista de permitidos las siguientes URL en el Adobe Granite CSRF Filter.

  1. Siga los pasos que se indican a continuación para realizar la lista de permitidos de las rutas mencionadas anteriormente.
  2. Iniciar sesión en configMgr
  3. Buscar el filtro de Adobe Granite CSRF
  4. Añada las 3 rutas siguientes en las secciones excluidas y guarde
  5. /content/AemFormsSamples/mergedata
  6. /content/AemFormsSamples/exportdata
  7. /content/AemFormsSamples/outputservice
  8. Buscar "Filtro de referente de Sling"
  9. Marque la casilla de verificación "Permitir vacío". (Esta configuración solo debe utilizarse con fines de prueba) Existen varias formas de probar el código de muestra. Lo más rápido y sencillo es usar la aplicación Postman. Postman le permite realizar solicitudes de POST al servidor. Instale la aplicación de Postman en su sistema.
    Inicie la aplicación e introduzca la siguiente URL para probar la API de datos de exportación

Asegúrese de haber seleccionado "POST" en la lista desplegable http://localhost:4502/content/AemFormsSamples/exportdata.html Asegúrese de especificar "Autorización" como "Auth básica". Especifique el nombre de usuario y la contraseña del servidor de AEM Vaya a la pestaña "Cuerpo" y especifique los parámetros de solicitud, tal y como se muestra en la imagen siguiente
exportar
A continuación, haga clic en el botón Send

El paquete contiene 3 muestras. En los párrafos siguientes se explica cuándo utilizar el servicio de salida o el servicio de Forms, la url del servicio , los parámetros de entrada que cada servicio espera

Combinar datos y acoplar salida

  • Utilice Output Service para combinar datos con documentos xdp o pdf para generar pdf plano

  • URL del POST: http://localhost:4502/content/AemFormsSamples/outputservice.html

  • Parámetros de solicitud -

    • xdp_or_pdf_file : El archivo xdp o pdf con el que desea combinar los datos
    • xmlfile: El archivo de datos xml que se combina con xdp_or_pdf_file
    • saveLocation: Ubicación para guardar el documento procesado en el sistema de archivos. Por ejemplo c:\documents\sample.pdf

Importar datos en archivo PDF

  • Usar FormsService para importar datos en un archivo de PDF

  • URL del POST - http://localhost:4502/content/AemFormsSamples/mergedata.html

  • Parámetros de solicitud:

    • pdffile : El archivo pdf con el que desea combinar los datos
    • xmlfile: El archivo de datos xml que se combina con el archivo pdf
    • saveLocation: Ubicación para guardar el documento procesado en el sistema de archivos. Por ejemplo c:\\outputsample.pdf.

Exportar datos de un archivo de PDF

  • Usar FormsService para exportar datos desde el archivo PDF

  • URL del POST L: http://localhost:4502/content/AemFormsSamples/exportdata.html

  • Parámetros de solicitud:

    • pdffile : El archivo pdf desde el que desea exportar datos
    • saveLocation: Ubicación para guardar los datos exportados en el sistema de archivos. Por ejemplo c:\documents\exported_data.xml

Puede importar esta colección de postman para probar la API

En esta página