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 eljavadoc para el servicio de salida.
  • FormsService : se trata de un servicio muy versátil que le permite exportar e importar datos desde y hacia archivos PDF. Para obtener más información, consulte javadoc para el servicio de Forms.

El siguiente fragmento de código exporta datos desde un 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 fácil es usar la aplicación Postman. Postman le permite realizar solicitudes de POST a su servidor. Instale la aplicación 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 "Autenticación 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 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 combinará con xdp_or_pdf_file
    • saveLocation: Ubicación para guardar el documento procesado en el sistema de archivos

Importar datos en archivo PDF:

  • Utilizar FormsService para importar datos en un archivo 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 combinará 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 PDF

  • Utilizar FormsService para exportar datos desde un archivo PDF

  • URL del POST: 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

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

En esta página