Optimieren der Leistung mithilfe der Java API

Rendern eines Formulars mit optimierter Leistung mithilfe der Forms API (Java):

  1. Projektdateien einschließen

    Fügen Sie Client-JAR-Dateien wie „adobe-forms-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen eines Forms Client-API-Objekts

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein FormsServiceClient-Objekt, indem Sie dessen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Festlegen von leistungsbezogenen Laufzeitoptionen

    • Erstellen Sie ein Objekt PDFFormRenderSpec, indem Sie den Konstruktor verwenden.
    • Legen Sie die Formular-Cache-Option fest, indem Sie die Methode setCacheEnabled des PDFFormRenderSpec-Objekts aufrufen und true übergeben.
    • Legen Sie die Option „linearisiert“ fest, indem Sie die Methode PDFFormRenderSpec des Objekts setLinearizedPDF aufrufen und true. übergeben.
  4. Wiedergeben des Formulars

    Rufen Sie die renderPDFForm-Methode des FormsServiceClient-Objekts auf und übergeben Sie die folgenden Werte:

    • Ein Zeichenfolgenwert, der den Namen des Formularentwurfs angibt, einschließlich der Dateinamenerweiterung.
    • Ein 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.
    • Ein Objekt vom Typ PDFFormRenderSpec, das Laufzeitoptionen speichert, um die Leistung zu verbessern.
    • Ein Objekt vom Typ URLSpec, das URI-Werte enthält, die für den Forms-Service erforderlich sind.
    • Ein java.util.HashMap-Objekt, das Dateianlagen speichert. 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.

  5. Schreiben des Formulardaten-Streams in den Client-Webbrowser

    • Erstellen Sie ein javax.servlet.ServletOutputStream-Objekt, das zum Senden eines Formulardatenstroms an den Client-Webbrowser verwendet wird.
    • Erstellen Sie ein com.adobe.idp.Document-Objekt, indem Sie die Methode getOutputContent des FormsResult-Objekts aufrufen.
    • Erstellen Sie ein java.io.InputStream-Objekt durch Aufrufen der getInputStream-Methode des com.adobe.idp.Document-Objekts.
    • Erstellen Sie ein Byte-Array und befüllen Sie es mit dem Formulardatenstrom, indem Sie die read-Methode des InputStream-Objekts aufrufen und das Byte-Array als Argument übergeben.
    • Um den Formulardatenstrom an den Client-Webbrowser zu senden, rufen Sie die write-Methode des javax.servlet.ServletOutputStream-Objekts auf. Übergeben Sie das Byte-Array an die Methode write.

Optimieren der Leistung mithilfe der Web-Service-API

Wiedergeben eines Formulars mit optimierter Leistung mithilfe der Forms-API (Web-Service):

  1. Projektdateien einschließen

    • Erstellen Sie Java-Proxy-Klassen, welche die Forms-Dienst-WSDL verwenden.
    • Schließen Sie die Java-Proxy-Klassen in Ihren Klassenpfad ein.
  2. Erstellen eines Forms Client-API-Objekts

    Erstellen Sie ein FormsService-Objekt und legen Sie Authentifizierungswerte fest.

  3. Festlegen von Leistungsoptionen bezüglich der Laufzeit

    • Erstellen Sie ein Objekt PDFFormRenderSpec, indem Sie den Konstruktor verwenden.
    • Legen Sie die Option „Formular-Cache“ fest, indem Sie die setCacheEnabled-Methode des PDFFormRenderSpec-Objekts aufrufen und „true“ übergeben.
    • Legen Sie die Option „eigenständig“ fest, indem Sie die setStandAlone-Methode des PDFFormRenderSpec-Objekts aufrufen und „true“ übergeben.
    • Legen Sie die Option „linearisiert“ fest, indem Sie die setLinearizedPDF-Methode des PDFFormRenderSpec-Objekts aufrufen und „true“ übergeben.
  4. Wiedergeben des Formulars

    Rufen Sie die renderPDFForm-Methode des FormsService-Objekts auf und übergeben Sie die folgenden Werte:

    • Ein Zeichenfolgenwert, der den Namen des Formularentwurfs angibt, einschließlich der Dateinamenerweiterung.
    • Ein 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.
    • Ein PDFFormRenderSpecc-Objekt, das Laufzeitoptionen speichert.
    • Ein URLSpec-Objekt, das URI-Werte enthält, die für den Forms-Service erforderlich sind.
    • Ein java.util.HashMap-Objekt, das Dateianlagen speichert. Dies ist ein optionaler Parameter. Sie können null festlegen, wenn Sie keine Dateien an das Formular anhängen möchten.
    • Ein leeres com.adobe.idp.services.holders.BLOBHolder-Objekt, das von der Methode gefüllt wird. Damit wird das wiedergegebene PDF-Formular gespeichert.
    • Ein leeres javax.xml.rpc.holders.LongHolder-Objekt, das von der Methode gefüllt wird. (Dieses Argument speichert die Anzahl der Seiten im Formular).
    • Ein leeres javax.xml.rpc.holders.StringHolder-Objekt, das von der Methode gefüllt wird. (Dieses Argument speichert den Gebietsschemawert).
    • Ein leeres 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.

  5. Schreiben des Formulardaten-Streams in den Client-Webbrowser

    • Erstellen Sie ein FormResult-Objekt durch Abrufen des Werts des value-Daten-Members des com.adobe.idp.services.holders.FormsResultHolder-Objekts.
    • Erstellen Sie ein javax.servlet.ServletOutputStream-Objekt, das zum Senden eines Formulardatenstroms an den Client-Webbrowser verwendet wird.
    • Erstellen Sie ein BLOB-Objekt, das Formulardaten enthält, indem Sie die Methode getOutputContent des FormsResult-Objekts aufrufen.
    • Erstellen Sie ein Byte-Array und füllen Sie es auf, indem Sie die Methode getBinaryData des BLOB-Objekts aufrufen. Mit dieser Aufgabe wird dem Byte-Array der Inhalt des FormsResult-Objekts zugewiesen.
    • Rufen Sie die Methode 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.
recommendation-more-help