DocumentatieAEMTutorials voor AEMTutorials voor AEM Forms

API gebruiken om een document met records te genereren in AEM Forms

Laatst bijgewerkt: 5 mei 2025
  • Van toepassing op:
  • Experience Manager 6.4
  • Experience Manager 6.5
  • Onderwerpen:
  • Adaptieve formulieren

Gemaakt voor:

  • Ervaren
  • Ontwikkelaar

Document met opnamen (DOR) programmatisch genereren

Dit artikel illustreert het gebruik van com.adobe.aemds.guide.addon.dor.DoRService API om Document van Verslag programmatically te produceren. Document van Verslagis een versie van PDF van de gegevens die in AanpassingsVorm worden gevangen.

  1. Hier volgt het codefragment. De eerste regel krijgt de DOR-service.
  2. Stel de DoROptions in.
  3. Roep de teruggevende methode van DoRService aan en ga het voorwerp DoROptions tot de teruggevende methode over
String dataXml = request.getParameter("data");
System.out.println("Got " + dataXml);
Session session;
com.adobe.aemds.guide.addon.dor.DoRService dorService = sling.getService(com.adobe.aemds.guide.addon.dor.DoRService.class);
System.out.println("Got ... DOR Service");
com.mergeandfuse.getserviceuserresolver.GetResolver aemDemoListings = sling.getService(com.mergeandfuse.getserviceuserresolver.GetResolver.class);
System.out.println("Got aem DemoListings");
resourceResolver = aemDemoListings.getFormsServiceResolver();
session = resourceResolver.adaptTo(Session.class);
resource = resourceResolver.getResource("/content/forms/af/sandbox/1201-borrower-payments");
com.adobe.aemds.guide.addon.dor.DoROptions dorOptions = new com.adobe.aemds.guide.addon.dor.DoROptions();
dorOptions.setData(dataXml);
dorOptions.setFormResource(resource);
java.util.Locale locale = new java.util.Locale("en");
dorOptions.setLocale(locale);
com.adobe.aemds.guide.addon.dor.DoRResult dorResult = dorService.render(dorOptions);
byte[] fileBytes = dorResult.getContent();
com.adobe.aemfd.docmanager.Document dorDocument = new com.adobe.aemfd.docmanager.Document(fileBytes);
resource = resourceResolver.getResource("/content/usergenerated/content/aemformsenablement");
Node paydotgov = resource.adaptTo(Node.class);
java.util.Random r = new java.util.Random();
String nodeName = Long.toString(Math.abs(r.nextLong()), 36);
Node fileNode = paydotgov.addNode(nodeName + ".pdf", "nt:file");

System.out.println("Created file Node...." + fileNode.getPath());
Node contentNode = fileNode.addNode("jcr:content", "nt:resource");
Binary binary = session.getValueFactory().createBinary(dorDocument.getInputStream());
contentNode.setProperty("jcr:data", binary);
JSONWriter writer = new JSONWriter(response.getWriter());
writer.object();
writer.key("filePath");
writer.value(fileNode.getPath());
writer.endObject();
session.save();

Voer de volgende stappen uit om dit op uw lokale systeem te proberen

  1. Artikelelementen downloaden en installeren met pakketbeheer
  2. Zorg ervoor u geïnstalleerd en begonnen de bundel DevelopingWithServiceUser als deel van wordt verstrekt creeer het artikel van de Gebruiker van de Dienst
  3. Login aan configMgr
  4. Zoeken naar Apache Sling Service User Mapper Service
  5. Zorg ervoor u de volgende ingang DevelopingWithServiceUser.core:getformsresourceresolver=fd-dienst in de sectie van de Toewijzingen van de Dienst
  6. open de vorm
  7. Vul het formulier in en klik op ' View PDF '
  8. U moet DOR zien op een nieuw tabblad in uw browser

Tips van het Oplossen van problemen

PDF wordt niet weergegeven op het tabblad Nieuwe browser:

  1. Let erop dat u pop-ups in uw browser niet blokkeert
  2. Zorg ervoor dat u de AEM-server als beheerder start (tenminste in vensters)
  3. Zorg ervoor de "DevelopingWithServiceUser"bundel in actieve staat is
  4. zorg ervoor de systeemgebruiker" fd-dienst"gelezen heeft, wijzigt, en leidt toestemmingen op de volgende knoop /content/usergenerated/content/aemformsenablement
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e