Verwenden der Forms Service-API in AEM Forms zum Rendern interaktiver PDF-Dateien
In diesem Artikel beschäftigen wir uns mit dem folgenden Dienst:
Das offizielle Javadoc für die AEM Forms-API finden Sie hier.
Das folgende Codesnippet rendert interaktive PDF-Dateien mithilfe des FormsService-Vorgangs „renderPDFForm“. Die Vorlage „schengen.xdp“ wird zum Zusammenführen der XML-Daten verwendet.
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;
Zeile 1: Speicherort des Ordners, der die XDP-Vorlage enthält
Zeile 2–4: Erstellen von PDFFormRenderOptions und Festlegen der zugehörigen Eigenschaften
Zeile 7: Generieren der interaktiven PDF-Datei mithilfe des FormsService-Vorgangs „renderPDFForm“
Zeile 11: Zurückgeben der generierten interaktiven PDF-Datei an die aufrufende Anwendung
So testen Sie das Beispielpaket auf Ihrem System:
Laden Sie „DevelopingWithServiceUserBundle“ herunter und installieren Sie es.
Laden Sie das Paket herunter und installieren Sie es mit Package Manager.
Suchen Sie nach „Adobe Granite CSRF Filter“.
Fügen Sie den folgenden Pfad in den ausgeschlossenen Abschnitten hinzu und speichern Sie
/bin/generateinteractivepdf.
Suchen Sie nach Apache Sling Service User Mapper Service und klicken Sie darauf, um die Eigenschaften zu öffnen.
Füllen Sie einige Felder aus und klicken Sie auf Herunterladen und Ausfüllen Schaltfläche
Die interaktive PDF-Datei sollte auf Ihr lokales System heruntergeladen werden.
Das Beispielpaket enthält das benutzerdefinierte Profil, das mit dem Mobile-Formular verknüpft ist. Sehen Sie sich die Datei customtoolbar.jsp an. Diese JSP-Datei extrahiert die Daten aus dem Mobile-Formular und sendet eine POST-Anfrage an das im Pfad /bin/generateinteractivepdf bereitgestellte Servlet. Das Servlet gibt die interaktive PDF-Datei an die aufrufende Anwendung zurück. Mit dem Code in „customtoolbar.jsp“ wird dann die Datei auf Ihr lokales System heruntergeladen.