AEM 6.4 hat das Ende der erweiterten Unterstützung erreicht und diese Dokumentation wird nicht mehr aktualisiert. Weitere Informationen finden Sie in unserer technische Unterstützung. Unterstützte Versionen suchen here.
Beim Rendern eines Formulars können Sie Laufzeitoptionen festlegen, die die Leistung des Forms-Service optimieren. Eine weitere Möglichkeit zur Verbesserung der Leistung des Forms-Service ist das Speichern von XDP-Dateien im Repository. In diesem Abschnitt wird jedoch nicht beschrieben, wie diese Aufgabe ausgeführt wird. (Siehe Aufrufen eines Service mithilfe einer Java-Client-Bibliothek).
Weitere Informationen zum Forms-Service finden Sie in der Service-Referenz für AEM Forms.
Führen Sie die folgenden Aufgaben aus, um die Leistung des Forms-Service beim Rendern eines Formulars zu optimieren:
Projektdateien einschließen
Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Webdienste verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.
Erstellen eines Forms-Client-API-Objekts
Bevor Sie einen Client-API-Vorgang für den Forms-Service programmgesteuert durchführen können, müssen Sie einen Client für den Forms-Service erstellen. Wenn Sie die Java-API verwenden, erstellen Sie ein FormsServiceClient
-Objekt. Wenn Sie die Web-Service-API für Forms verwenden, erstellen Sie ein FormsService
-Objekt.
Festlegen von leistungsbezogenen Laufzeitoptionen
Sie können die folgenden leistungsbezogenen Laufzeitoptionen festlegen, um die Leistung des Forms-Service zu verbessern:
true
setzen, wodurch Formulare ohne Statusinformationen wiedergegeben werden. Statusinformationen sind erforderlich, wenn Sie ein interaktives Formular an einen Endbenutzer rendern möchten, der dann Informationen in das Formular eingibt und das Formular an den Forms-Service zurücksendet. Der Forms-Dienst führt anschließend eine Berechnung durch und gibt das Formular mit im Formular angezeigten Ergebnissen an den Benutzer zurück. Wenn ein Formular ohne Statusinformationen an den Forms-Service zurückgesendet wird, sind nur die XML-Daten verfügbar und serverseitige Berechnungen werden nicht durchgeführt.Rendern des Formulars
Um das Formular nach dem Festlegen von Leistungsoptionen wiederzugeben, verwenden Sie dieselbe Anwendungslogik wie für die Wiedergabe eines Formulars ohne Leistungsoptionen.
Schreiben Sie den Formulardaten-Stream in den Client-Webbrowser
Nachdem der Forms-Service ein Formular gerendert hat, wird ein Formulardaten-Stream zurückgegeben, den Sie in den Client-Webbrowser schreiben müssen. Sobald das Formular in den Client-Webbrowser geschrieben wurde, ist es für den Benutzer sichtbar.
Siehe auch
Einbeziehung von AEM Forms Java-Bibliotheksdateien
Verbindungseigenschaften festlegen
Schnellstart mit der Forms Service-API
Rendern interaktiver PDF-Formulare
Rendern von Formularen als HTML
Erstellen von Web-Programmen, die Formulare wiedergeben
Rendern eines Formulars mit optimierter Leistung mithilfe der Forms API (Java):
Projektdateien einschließen
Fügen Sie Client-JAR-Dateien wie „adobe-forms-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.
Erstellen eines Forms Client-API-Objekts
ServiceClientFactory
-Objekt, das Verbindungseigenschaften enthält.FormsServiceClient
-Objekt, indem Sie dessen Konstruktor verwenden und das ServiceClientFactory
-Objekt übergeben.Festlegen von leistungsbezogenen Laufzeitoptionen
PDFFormRenderSpec
, indem Sie den Konstruktor verwenden.setCacheEnabled
des PDFFormRenderSpec
-Objekts aufrufen und true
übergeben.PDFFormRenderSpec
des Objekts setLinearizedPDF
aufrufen und true.
übergeben.Wiedergeben des Formulars
Rufen Sie die renderPDFForm
-Methode des FormsServiceClient
-Objekts auf und übergeben Sie die folgenden Werte:
com.adobe.idp.Document
-Objekt, das Daten enthält, die mit dem Formular zusammengeführt werden sollen. Wenn Sie keine Daten zusammenführen möchten, übergeben Sie ein leeres com.adobe.idp.Document
-Objekt.PDFFormRenderSpec
, das Laufzeitoptionen speichert, um die Leistung zu verbessern.URLSpec
, das URI-Werte enthält, die für den Forms-Service erforderlich sind.java.util.HashMap
-Objekt, in dem Dateianlagen gespeichert werden. Dies ist ein optionaler Parameter, für den Sie null
angeben können, wenn Sie keine Dateien an das Formular anhängen möchten.Die Methode renderPDFForm
gibt ein FormsResult
-Objekt zurück, das einen Formulardaten-Stream enthält, der in den Client-Webbrowser geschrieben werden muss.
Schreiben des Formulardaten-Streams in den Client-Webbrowser
javax.servlet.ServletOutputStream
-Objekt, das zum Senden eines Formulardatenstroms an den Client-Webbrowser verwendet wird.com.adobe.idp.Document
-Objekt, indem Sie die Methode getOutputContent
des FormsResult
-Objekts aufrufen.java.io.InputStream
-Objekt durch Aufrufen der getInputStream
-Methode des com.adobe.idp.Document
-Objekts.read
-Methode des InputStream
-Objekts aufrufen und das Byte-Array als Argument übergeben.write
-Methode des javax.servlet.ServletOutputStream
-Objekts auf. Übergeben Sie das Byte-Array an die Methode write
.Siehe auch
Schnellstart (SOAP-Modus): Optimieren der Leistung mithilfe der Java-API
Einbeziehung von AEM Forms Java-Bibliotheksdateien
Verbindungseigenschaften festlegen
Wiedergeben eines Formulars mit optimierter Leistung mithilfe der Forms-API (Web-Service):
Projektdateien einschließen
Erstellen eines Forms Client-API-Objekts
Erstellen Sie ein FormsService
-Objekt und legen Sie Authentifizierungswerte fest.
Festlegen von Leistungsoptionen bezüglich der Laufzeit
PDFFormRenderSpec
, indem Sie den Konstruktor verwenden.setCacheEnabled
-Methode des PDFFormRenderSpec
-Objekts aufrufen und „true“ übergeben.setStandAlone
-Methode des PDFFormRenderSpec
-Objekts aufrufen und „true“ übergeben.setLinearizedPDF
-Methode des PDFFormRenderSpec
-Objekts aufrufen und „true“ übergeben.Wiedergeben des Formulars
Rufen Sie die renderPDFForm
-Methode des FormsService
-Objekts auf und übergeben Sie die folgenden Werte:
BLOB
-Objekt, das Daten enthält, die mit dem Formular zusammengeführt werden sollen. Wenn Sie keine Daten zusammenführen möchten, übergeben Sie null
.PDFFormRenderSpecc
-Objekt, das Laufzeitoptionen speichert.URLSpec
-Objekt, das URI-Werte enthält, die für den Forms-Service erforderlich sind.java.util.HashMap
-Objekt, in dem Dateianlagen gespeichert werden. Dies ist ein optionaler Parameter. Sie können null
festlegen, wenn Sie keine Dateien an das Formular anhängen möchten.com.adobe.idp.services.holders.BLOBHolder
-Objekt, das von der Methode gefüllt wird. Damit wird das wiedergegebene PDF-Formular gespeichert.javax.xml.rpc.holders.LongHolder
-Objekt, das von der Methode gefüllt wird. (Dieses Argument speichert die Anzahl der Seiten im Formular).javax.xml.rpc.holders.StringHolder
-Objekt, das von der Methode gefüllt wird. (Dieses Argument speichert den Gebietsschemawert).com.adobe.idp.services.holders.FormsResultHolder
-Objekt, das die Ergebnisse dieses Vorgangs enthält.Die Methode renderPDFForm
füllt das com.adobe.idp.services.holders.FormsResultHolder
-Objekt, das als letzter Argumentwert übergeben wird, mit einem Formulardaten-Stream, der in den Client-Webbrowser geschrieben werden muss.
Schreiben des Formulardaten-Streams in den Client-Webbrowser
FormResult
-Objekt durch Abrufen des Werts des value
-Daten-Members des com.adobe.idp.services.holders.FormsResultHolder
-Objekts.javax.servlet.ServletOutputStream
-Objekt, das zum Senden eines Formulardatenstroms an den Client-Webbrowser verwendet wird.BLOB
-Objekt, das Formulardaten enthält, indem Sie die Methode getOutputContent
des FormsResult
-Objekts aufrufen.getBinaryData
des BLOB
-Objekts aufrufen. Mit dieser Aufgabe wird dem Byte-Array der Inhalt des FormsResult
-Objekts zugewiesen.write
des javax.servlet.http.HttpServletResponse
-Objekts auf, um den Formulardaten-Stream an den Client-Webbrowser zu senden. Übergeben Sie das Byte-Array an die Methode write
.Siehe auch
Aufrufen von AEM Forms mit Base64-Kodierung