Representar un PDF interactivo con los servicios de Forms en AEM Forms

Uso de la API de servicio de Forms en AEM Forms para procesar el PDF interactivo

En este artículo echaremos un vistazo al siguiente servicio

  • FormsService: se trata de un servicio muy versátil que le permite exportar e importar datos desde y hacia archivos de PDF, así como generar PDF interactivos combinando datos xml en plantillas xdp

El funcionario la API de javadoc para AEM Forms se enumera aquí

El siguiente fragmento de código procesa el PDF interactivo mediante la operación renderPDFForm de FormsService. El archivo schengen.xdp es una plantilla que se utiliza para combinar los datos xml.

String uri = "crx:///content/dam/formsanddocuments";
PDFFormRenderOptions renderOptions = new PDFFormRenderOptions();
renderOptions.setAcrobatVersion(AcrobatVersion.Acrobat_11);
renderOptions.setContentRoot(uri);
Document interactivePDF = null;
try {
interactivePDF = formsService.renderPDFForm("schengen.xdp", xmlData, renderOptions);
} catch (FormsServiceException e) {
 e.printStackTrace();
}
return interactivePDF;

Línea 1: ubicación de la carpeta que contiene la plantilla xdp

Línea2-4: Crear PDFFormRenderOptions y establecer sus propiedades

Línea 7: Generar un PDF interactivo mediante la operación del servicio renderPDFForm de FormsService

Línea 11: Devuelve el PDF interactivo generado a la aplicación que realiza la llamada

Para probar el paquete de muestra en el sistema

  1. Descargar e instalar el paquete DevelopersWithServiceUser

  2. Descargue e instale el paquete de ejemplo DocumentServices mediante la consola web Felix

  3. AEM Descargue e instale el paquete mediante el administrador de paquetes de la

  4. Inicie sesión en configMgr

  5. Búsqueda de Adobe Granite CSRF Filter

  6. Añada la siguiente ruta en las secciones excluidas y guarde

  7. /bin/generateinteractivepdf

  8. Buscar por Servicio de asignador de usuarios del servicio Apache Sling y haga clic en para abrir las propiedades

    1. Haga clic en + icono (más) para añadir la siguiente asignación de servicio
      • DevelopingWithServiceUser.core:getformsresourceresolver=fd-service
    2. Haga clic en Guardar
  9. Abra el formulario móvil

  10. Rellene un par de campos y haga clic en el botón Descargar y rellenar … botón

  11. El PDF interactivo debe descargarse en el sistema local

El paquete de ejemplo contiene el perfil personalizado asociado al formulario móvil. Explore la customtoolbar.jsp archivo. Este jsp extrae los datos del formulario móvil y realiza una solicitud de POST al servlet montado en /bin/generateinteractivepdf ruta. El servlet devuelve el PDF interactivo a la aplicación que realiza la llamada. A continuación, el código de customtoolbar.jsp descarga el archivo en el sistema local

recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e