Zusammenfassung der Schritte

Um ein HTML-Formular zu rendern, das eine CSS-Datei verwendet, führen Sie die folgenden Aufgaben aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Forms-Java-API-Objekt.
  3. Verweisen Sie auf die CSS-Datei.
  4. Rendern Sie ein HTML-Formular.
  5. Schreiben Sie den Formular-Datenstrom in den Client-Webbrowser.

Schließen Sie Projektdateien ein

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie eine Clientanwendung 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-Java-API-Objekts

Bevor Sie einen vom Forms-Service unterstützten Vorgang programmgesteuert ausführen können, müssen Sie ein Forms-Client-Objekt erstellen.

Verweisen auf die CSS-Datei

Um ein HTML-Formular zu rendern, das eine benutzerdefinierte CSS-Datei verwendet, stellen Sie sicher, dass Sie auf eine vorhandene CSS-Datei verweisen.

Rendern eines HTML-Formulars

Um ein HTML-Formular zu rendern, geben Sie ein Formular-Design an, das in Designer erstellt und als XDP-Datei gespeichert wurde. Wählen Sie einen HTML-Transformationstyp aus. Sie können beispielsweise den HTML-Transformationstyp angeben, der dynamische HTML für Internet Explorer 5.0 oder höher rendert.

Für das Rendern eines HTML-Formulars sind auch Werte erforderlich, z. B. URI-Werte, die zum Rendern anderer Formulartypen erforderlich sind.

Schreiben des Formulardatenstroms in den Client-Webbrowser

Wenn der Forms-Service ein HTML-Formular rendert, wird ein Formulardatenstrom zurückgegeben, den Sie in den Client-Webbrowser schreiben müssen, damit das HTML-Formular für den Benutzer sichtbar wird.

Siehe auch

Rendern eines HTML-Formulars, das eine CSS-Datei verwendet, mithilfe der Java-API

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 HTML-Formulars, das eine CSS-Datei verwendet, mithilfe der Java-API

Rendern Sie ein HTML-Formular, das eine benutzerdefinierte CSS-Datei verwendet, 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-Java-API-Objekts

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein FormsServiceClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Verweisen auf die CSS-Datei

    • Erstellen Sie ein HTMLRenderSpec-Objekt, indem Sie dessen Konstruktor verwenden.
    • Rufen Sie zum Rendern des HTML-Formulars, das eine benutzerdefinierte CSS-Datei verwendet, die setCustomCSSURI-Methode des HTMLRenderSpec-Objekts auf und übergeben Sie einen Zeichenfolgenwert, der den Speicherort und den Namen der CSS-Datei angibt.
  4. Rendern eines HTML-Formulars

    Rufen Sie die Methode (Deprecated) (Deprecated) renderHTMLForm des FormsServiceClient-Objekts auf und übergeben Sie die folgenden Werte:

    • Ein Zeichenfolgenwert, der den Namen des Formularentwurfs einschließlich der Dateinamenerweiterung angibt. Wenn Sie auf einen Formularentwurf verweisen, der Teil eines Forms-Programms ist, stellen Sie sicher, dass Sie den vollständigen Pfad angeben, z. B. Applications/FormsApplication/1.0/FormsFolder/Loan.xdp.
    • Ein TransformTo-Auflistungswert, der den HTML-Voreinstellungstyp angibt. Um beispielsweise ein HTML-Formular zu rendern, das mit Dynamic HTML für Internet Explorer 5.0 oder höher kompatibel ist, geben Sie TransformTo.MSDHTML an.
    • 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.
    • Das HTMLRenderSpec-Objekt, das HTML-Laufzeitoptionen speichert.
    • Ein Zeichenfolgenwert, der den HTTP_USER_AGENT-Kopfzeilenwert angibt, z. B. Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322).
    • Ein URLSpec-Objekt, das URI-Werte speichert, die zum Rendern eines HTML-Formulars erforderlich sind.
    • Ein java.util.HashMap-Objekt, das Dateianlagen speichert. Dies ist ein optionaler Parameter, und Sie können null angeben, wenn Sie keine Dateien an das Formular anhängen möchten.

    Die (Deprecated) renderHTMLForm-Methode gibt ein FormsResult-Objekt zurück, das einen Formulardatenstrom enthält, der in den Client-Webbrowser geschrieben werden muss.

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

    • Erstellen Sie ein Objekt vom Typ com.adobe.idp.Document, indem Sie die Methode getOutputContent des FormsResult-Objekts aufrufen.
    • Ermitteln Sie den Content-Typ des com.adobe.idp.Document-Objekts, indem Sie seine Methode getContentType aufrufen.
    • Legen Sie den Content-Typ des javax.servlet.http.HttpServletResponse-Objekts fest, indem Sie seine Methode setContentType aufrufen und den Content-Typ des com.adobe.idp.Document-Objekts übergeben.
    • Erstellen Sie ein Objekt vom Typ javax.servlet.ServletOutputStream, das zum Schreiben des Formulardatenstroms in den Client-Webbrowser verwendet wird, indem Sie die Methode getOutputStream des javax.servlet.h\ttp.HttpServletResponse-Objekts aufrufen.
    • Erstellen Sie ein Objekt vom Typ java.io.InputStream, indem Sie die Methode getInputStream des com.adobe.idp.Document-Objekts aufrufen.
    • Erstellen Sie ein Byte-Array und füllen Sie es mit dem Formulardatenstrom, indem Sie die Methode read des InputStream-Objekts aufrufen und das Byte-Array als Argument übergeben.
    • Rufen Sie die Methode write des javax.servlet.ServletOutputStream-Objekts auf, um den Formulardatenstrom an den Client-Webbrowser zu senden. Übergeben Sie das Byte-Array an die Methode write.

Rendern eines HTML-Formulars, das eine CSS-Datei verwendet, mithilfe der Web Service-API

Rendern Sie ein HTML-Formular, das eine benutzerdefinierte CSS-Datei verwendet, 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-Java-API-Objekts

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

  3. Verweisen auf die CSS-Datei

    • Erstellen Sie ein HTMLRenderSpec-Objekt, indem Sie dessen Konstruktor verwenden.
    • Rufen Sie zum Rendern des HTML-Formulars, das eine benutzerdefinierte CSS-Datei verwendet, die setCustomCSSURI-Methode des HTMLRenderSpec-Objekts auf und übergeben Sie einen Zeichenfolgenwert, der den Speicherort und den Namen der CSS-Datei angibt.
  4. Rendern eines HTML-Formulars

    Rufen Sie die Methode (Deprecated) renderHTMLForm des FormsService-Objekts auf und übergeben Sie die folgenden Werte:

    • Ein Zeichenfolgenwert, der den Namen des Formularentwurfs einschließlich der Dateinamenerweiterung angibt. Wenn Sie auf einen Formularentwurf verweisen, der Teil eines Forms-Programms ist, stellen Sie sicher, dass Sie den vollständigen Pfad angeben, z. B. Applications/FormsApplication/1.0/FormsFolder/Loan.xdp.
    • Ein TransformTo-Auflistungswert, der den HTML-Voreinstellungstyp angibt. Um beispielsweise ein HTML-Formular zu rendern, das mit Dynamic HTML für Internet Explorer 5.0 oder höher kompatibel ist, geben Sie TransformTo.MSDHTML an.
    • 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. (Siehe Vorausfüllen von Formularen mit fließfähigen Layouts.)
    • Das HTMLRenderSpec-Objekt, das HTML-Laufzeitoptionen speichert.
    • Ein Zeichenfolgenwert, der den HTTP_USER_AGENT-Kopfzeilenwert angibt, z. B. Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322). Wenn Sie diesen Wert nicht festlegen möchten, können Sie eine leere Zeichenfolge übergeben.
    • Ein URLSpec-Objekt, das URI-Werte speichert, die zum Rendern eines HTML-Formulars 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.
    • Ein leeres com.adobe.idp.services.holders.BLOBHolder-Objekt, das über die (Deprecated) renderHTMLForm-Methode gefüllt wird. Dieser Parameterwert speichert das gerenderte Formular.
    • Ein leeres com.adobe.idp.services.holders.BLOBHolder-Objekt, das von der (Deprecated) renderHTMLForm-Methode gefüllt wird. Dieser Parameter speichert die XML-Ausgabedaten.
    • Ein leeres javax.xml.rpc.holders.LongHolder-Objekt, das von der (Deprecated) renderHTMLForm-Methode gefüllt wird. Dieses Argument speichert die Anzahl der Seiten im Formular.
    • Ein leeres javax.xml.rpc.holders.StringHolder-Objekt, das von der (Deprecated) renderHTMLForm-Methode gefüllt wird. Dieses Argument speichert den Gebietsschemawert.
    • Ein leeres javax.xml.rpc.holders.StringHolder-Objekt, das von der (Deprecated) renderHTMLForm-Methode gefüllt wird. Dieses Argument speichert den verwendeten HTML-Rendering-Wert.
    • Ein leeres com.adobe.idp.services.holders.FormsResultHolder-Objekt, das die Ergebnisse dieses Vorgangs enthält.

    Die Methode (Deprecated) renderHTMLForm 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 Objekt vom Typ FormResult, indem Sie den Wert des Datenelements value des com.adobe.idp.services.holders.FormsResultHolder-Objekts abrufen.
    • Erstellen Sie ein Objekt vom Typ BLOB, das Formulardaten enthält, indem Sie die Methode getOutputContent des FormsResult-Objekts aufrufen.
    • Ermitteln Sie den Content-Typ des BLOB-Objekts, indem Sie seine Methode getContentType aufrufen.
    • Legen Sie den Content-Typ des javax.servlet.http.HttpServletResponse-Objekts fest, indem Sie seine Methode setContentType aufrufen und den Content-Typ des BLOB-Objekts übergeben.
    • Erstellen Sie ein Objekt vom Typ javax.servlet.ServletOutputStream, das zum Schreiben des Formulardatenstroms in den Client-Webbrowser verwendet wird, indem Sie die Methode getOutputStream des javax.servlet.http.HttpServletResponse-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 Formulardatenstrom an den Client-Webbrowser zu senden. Übergeben Sie das Byte-Array an die Methode write.
recommendation-more-help