Zusammenfassung der Schritte

Um ein HTML-Formular mit einer benutzerdefinierten Symbolleiste zu rendern, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Forms-Java-API-Objekt.
  3. Referenzieren Sie eine benutzerdefinierte fscmenu-XML-Datei.
  4. Rendern Sie ein HTML-Formular.
  5. Schreiben Sie den Formular-Datenstrom in den Client-Webbrowser.

Einschließen von Projektdateien

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 Web-Services verwenden, schließen Sie die Proxy-Dateien ein.

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.

Referenzieren einer benutzerdefinierten fscmenu-XML-Datei

Um ein HTML-Formular mit einer benutzerdefinierten Symbolleiste wiederzugeben, referenzieren Sie eine fscmenu-XML-Datei, die die Symbolleiste beschreibt. (Dieser Abschnitt enthält zwei Beispiele für eine fscmenu-XML-Datei.) Stellen Sie außerdem sicher, dass die Datei „fscmenu.xml“ die Speicherorte aller referenzierten Dateien korrekt angibt. Stellen Sie wie zuvor in diesem Abschnitt erwähnt sicher, dass alle Dateien durch das Keyword FSToolBarURI oder ihre absoluten Positionen referenziert werden.

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 auch 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 die Wiedergabe eines HTML-Formulars sind auch Werte erforderlich, z. B. URI-Werte für das Rendern anderer Formulartypen.

Schreiben des Formulardaten-Streams in den Client-Webbrowser

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

Siehe auch

Rendern eines HTML-Formulars mit einer benutzerdefinierten Symbolleiste mithilfe der Java-API

Rendern eines HTML-Formulars mit einer benutzerdefinierten Symbolleiste mithilfe der Web-Service-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 mit einer benutzerdefinierten Symbolleiste mithilfe der Java-API

Rendern eines HTML-Formular mit einer benutzerdefinierten Symbolleiste mithilfe der Forms-Service-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 Sie auf eine benutzerdefinierte fscmenu-XML-Datei

    • Erstellen Sie ein HTMLRenderSpec-Objekt mithilfe seines Konstruktors.
    • Um ein HTML-Formular mit einer Symbolleiste zu rendern, rufen Sie die Methode setHTMLToolbar des HTMLRenderSpec-Objekts auf und übergeben einen HTMLToolbar-Auflistungswert. Um beispielsweise eine vertikale HTML-Symbolleiste anzuzeigen, übergeben Sie HTMLToolbar.Vertical.
    • Geben Sie den Speicherort der fscmenu-XML-Datei an, indem Sie die setToolbarURI-Methode des HTMLRenderSpec-Objekts aufrufen und einen Zeichenfolgenwert übergeben, der den URI-Speicherort der XML-Datei angibt.
    • Legen Sie ggf. den Gebietsschemawert fest, indem Sie die setLocale-Methode des HTMLRenderSpec-Objekts aufrufen und einen Zeichenfolgenwert übergeben, der den Gebietsschemawert angibt. Der Standardwert ist Englisch.
    HINWEIS
    Die mit diesem Abschnitt verknüpften Quick Starts setzen diesen Wert auf fr_FR.
  4. Rendern Sie ein HTML-Formular

    Rufen Sie die Methode 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 Kopfzeilenwert HTTP_USER_AGENT 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 Dateianhänge speichert. Dies ist ein optionaler Parameter, und Sie können null angeben, wenn Sie keine Dateien an das Formular anhängen möchten.

    Die 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 com.adobe.idp.Document-Objekt, 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 setContentType-Methode aufrufen und den Content-Typ des com.adobe.idp.Document-Objekts übergeben.
    • Erstellen Sie ein javax.servlet.ServletOutputStream-Objekt, das verwendet wird, um den Formular-Datenstrom in den Client-Webbrowser zu schreiben, indem Sie die getOutputStream-Methode des javax.servlet.http.HttpServletResponse-Objekts aufrufen.
    • Erstellen Sie ein java.io.InputStream-Objekt, indem Sie die getInputStream-Methode des com.adobe.idp.Document-Objekts aufrufen.
    • Erstellen Sie ein Byte-Array und füllen Sie es mit dem Formulardaten-Stream, 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 Formulardaten-Stream an den Client-Webbrowser zu senden. Übergeben Sie das Byte-Array an die Methode write.