Asynchrone Übermittlung von adaptiven Formularen

Web-Formulare werden herkömmlicherweise für die synchrone Übermittlung konfiguriert. Wenn Benutzer ein Formular senden, werden sie zu einer Bestätigungsseite oder, falls die Übermittlung fehlschlägt, auf eine Fehlerseite weitergeleitet. Allerdings sind moderne Web-Abläufe wie Einzelseitenanwendungen zunehmend beliebt. Dabei bleibt die Web-Seite unverändert, während die Client-Server-Interaktion im Hintergrund abläuft. Sie können diese Erfahrung jetzt in adaptiven Formularen bieten, indem Sie die asynchrone Übermittlung konfigurieren. In diesem Fall verhält sich ein adaptives Formular wie eine Einzelseitenanwendung, da das Formular nicht neu geladen wird und die URL unverändert bleibt, wenn die gesendeten Formulardaten auf dem Server validiert werden.

Im Folgenden finden Sie Details zu asynchronen Übermittlung in adaptiven Formularen.

Asynchrone Übermittlung konfigurieren

So konfigurieren Sie die asynchrone Übermittlung für eine adaptives Formular:

  1. Wählen Sie im Authoring-Modus des adaptiven Formulars den Formular-Container aus und tippen Sie auf cmppr1, um dessen Eigenschaften anzuzeigen.

  2. Aktivieren Sie im Eigenschaftenbereich Übermittlung die Option Asynchrone Übermittlung verwenden.

  3. Wählen Sie im Abschnitt Beim Absenden eine der folgenden Optionen aus, die bei der erfolgreichen Übermittlung des Formulars ausgeführt werden soll.

    • Zu URL umleiten: Leitet bei Übermittlung des Formulars an die angegebene URL bzw. auf die angegebene Seite um. Sie können eine URL angeben oder mit der Funktion zum Durchsuchen den Pfad zu einer Seite im Feld Umleitungs-URL/Pfad wählen.
    • Nachricht anzeigen: Zeigt eine Meldung beim Senden des Formulars an. Sie können eine Nachricht in das Textfeld unterhalb der Option Nachricht anzeigen eingeben. Das Textfeld unterstützt Rich-Text-Formatierung.
  4. Tippen Sie auf check-button1, um die Eigenschaften zu speichern.

Funktionsweise der asynchronen Übermittlung

AEM Forms bietet standardmäßig Handler zur Verarbeitung von erfolgreichen und fehlgeschlagenen Formularübermittlungen an. Handler sind clientseitige Funktionen, die anhand der Serverantwort ausgeführt werden. Wenn ein Formular übermittelt wird, werden die Daten zur Validierung an den Server gesendet, der eine Antwort mit Informationen über den Erfolg oder das Fehlschlagen der Übermittlung an den Client zurücksendet. Die Informationen werden als Parameter an den relevanten Handler übergeben, um die Funktion auszuführen.

Darüber hinaus können Formularautoren und -entwickler formularspezifische Regeln schreiben, die die Standard-Handler überschreiben. Weitere Informationen finden Sie unter Standard-Handler mithilfe von Regeln außer Kraft setzen.

Im Folgenden wird zunächst die Serverantwort für Erfolgs- und Fehlerereignisse beschrieben.

Server-Antwort für Erfolgsereignis bei Übermittlung

Die Server-Antwort für Erfolgsereignis bei Übermittlung weist folgende Struktur auf:

{
  contentType : "<xmlschema or jsonschema>",
  data : "<dataXML or dataJson>" ,
  thankYouOption : <page/message>,
  thankYouContent : "<thank you page url/thank you message>"
}

Die Antwort des Servers für die erfolgreiche Übermittlung eines Formulars enthält:

  • Formattyp der Formulardaten: XML oder JSON
  • Formulardaten im XML- oder JSON-Format
  • Ausgewählte Option zum Umleiten auf eine Seite oder zum Anzeigen einer Meldung wie im Formular konfiguriert
  • Seiten-URL oder Meldungsinhalt wie in dem Formular konfiguriert

Der Erfolgs-Handler liest die Serverantwort und leitet dementsprechend zur konfigurierten Seiten-URL weiter oder zeigt eine Meldung an.

Serverantwort für Fehlerereignis bei Übermittlung

Die Serverantwort für Fehlerereignis bei Übermittlung weist folgende Struktur auf:

{
   errorCausedBy : "<CAPTCHA_VALIDATION or SERVER_SIDE_VALIDATION>",

   errors : [
               { "somExpression" : "<SOM Expression>",
                 "errorMessage"  : "<Error Message>"
               },
               ...
             ]
 }

Die Antwort des Servers für eine fehlgeschlagene Übermittlung eines Formulars enthält:

  • Grund für den Fehler, falsche Antwort in CAPTCHA oder fehlgeschlagene Server-seitige Validierung
  • Liste der Fehlerobjekte einschließlich SOM-Ausdruck des Felds mit der fehlgeschlagenen Validierung und zugehörige Fehlermeldung

Der Fehler-Handler liest die Serverantwort und zeigt die entsprechende Fehlermeldung im Formular an.

Standard-Handler mithilfe von Regeln außer Kraft setzen

Formularautoren und -entwickler können im Codeeditor formularspezifische Regeln schreiben, die die Standard-Handler außer Kraft setzen. Die Antwort des Servers bei Erfolgs- und Fehlerereignissen wird auf Formularebene bereitgestellt, auf die Entwickler mithilfe von $event.data in Regeln zugreifen können.

Führen Sie die folgenden Schritte aus, um im Codeeditor Regeln zu schreiben, um die Erfolgs- und Fehlerereignisse zu verarbeiten.

  1. Öffnen Sie das adaptive Formular im Authoring-Modus, wählen Sie ein Formularobjekt aus und tippen Sie auf edit-rules1, um den Regeleditor zu öffnen.
  2. Wählen Sie Formular in der Struktur „Formularobjekte“ und tippen Sie auf Erstellen.
  3. Wählen Sie Codeeditor aus der Dropdownliste zur Auswahl des Modus.
  4. Tippen Sie im Codeeditor auf Code bearbeiten. Tippen Sie im Bestätigungsdialogfeld auf Bearbeiten.
  5. Wählen Sie Übermittlung erfolgreich oder Fehler beim Einreichen aus der Dropdownliste Ereignis.
  6. Schreiben Sie eine Regel für das ausgewählte Ereignis und tippen Sie auf Fertig, um die Regel zu speichern.

Auf dieser Seite