Configuración XDP mediante el servicio de ensamblador

Este artículo proporciona los recursos para mostrar la capacidad de unir documentos xdp mediante el servicio Assembler.
El siguiente código jsp se escribió para insertar un subformulario denominado dirección del documento xdp denominado dirección.xdp en un punto de inserción denominado dirección en el documento master.xdp. AEM El xdp resultante se guardó en la carpeta raíz de la instalación de la.

El servicio Assembler se basa en documentos DDX válidos para describir la manipulación de documentos de PDF. Puede consultar el documento de referencia DDX aquí. La página 40 contiene información sobre la vinculación xdp.

    javax.servlet.http.Part ddxFile = request.getPart("xdpstitching.ddx");
    System.out.println("Got DDX");
    java.io.InputStream ddxIS = ddxFile.getInputStream();
    com.adobe.aemfd.docmanager.Document ddxDocument = new com.adobe.aemfd.docmanager.Document(ddxIS);
    javax.servlet.http.Part masterXdpPart = request.getPart("masterxdp.xdp");
    System.out.println("Got master xdp");
    java.io.InputStream masterXdpPartIS = masterXdpPart.getInputStream();
    com.adobe.aemfd.docmanager.Document masterXdpDocument = new com.adobe.aemfd.docmanager.Document(masterXdpPartIS);

    javax.servlet.http.Part fragmentXDPPart = request.getPart("fragment.xdp");
    System.out.println("Got fragment.xdp");
    java.io.InputStream fragmentXDPPartIS = fragmentXDPPart.getInputStream();
    com.adobe.aemfd.docmanager.Document fragmentXdpDocument = new com.adobe.aemfd.docmanager.Document(fragmentXDPPartIS);

    java.util.Map < String, Object > mapOfDocuments = new java.util.HashMap < String, Object > ();
    mapOfDocuments.put("master.xdp", masterXdpDocument);
    mapOfDocuments.put("address.xdp", fragmentXdpDocument);
    com.adobe.fd.assembler.service.AssemblerService assemblerService = sling.getService(com.adobe.fd.assembler.service.AssemblerService.class);
    if (assemblerService != null)
      System.out.println("Got assembler service");

    com.adobe.fd.assembler.client.AssemblerOptionSpec aoSpec = new com.adobe.fd.assembler.client.AssemblerOptionSpec();
    aoSpec.setFailOnError(true);

    com.adobe.fd.assembler.client.AssemblerResult assemblerResult = assemblerService.invoke(ddxDocument, mapOfDocuments, aoSpec);
    com.adobe.aemfd.docmanager.Document finalXDP = assemblerResult.getDocuments().get("stitched.xdp");
    finalXDP.copyToFile(new java.io.File("stitched.xdp"));

A continuación, se muestra el archivo DDX para insertar fragmentos en otro xdp. El DDX inserta el subformulario address de address.xdp en el punto de inserción denominado address del archivo master.xdp. El documento stitched.xdp resultante se guardará en el sistema de archivos.

<?xml version="1.0" encoding="UTF-8"?>
<DDX xmlns="http://ns.adobe.com/DDX/1.0/">
        <XDP result="stitched.xdp">
           <XDP source="master.xdp">
            <XDPContent insertionPoint="address" source="address.xdp" fragment="address"/>
         </XDP>
        </XDP>
</DDX>

AEM Para que esta capacidad funcione en el servidor de la

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

  1. Siga los pasos que se mencionan a continuación para lista de permitidos las rutas mencionadas anteriormente.
  2. Iniciar sesión en configMgr
  3. Búsqueda de Adobe Granite CSRF Filter
  4. Agregue la siguiente ruta en las secciones excluidas y guarde /content/AemFormsSamples/assemblerservice
  5. Busque "Filtro de referente de Sling"
  6. Marque la casilla "Permitir vacío". (Esta configuración solo debe ser para fines de prueba)
    Existen varias formas de probar el código de ejemplo. La forma más rápida y sencilla de usar una aplicación de Postman es. 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
    http://localhost:4502/content/AemFormsSamples/assemblerservice.html

Proporcione los siguientes parámetros de entrada según se especifican en la captura de pantalla. Puede utilizar los documentos de ejemplo que descargó anteriormente,
xdp-stitch-postman

NOTE
Asegúrese de que la instalación de AEM Forms haya finalizado. Todos los paquetes deben estar en estado activo.
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e