Best Practices für die Arbeit mit adaptiven Formularen best-practices-for-working-with-adaptive-forms

Adobe empfiehlt, die modernen und erweiterbaren Kernkomponentenzur Datenerfassung zu verwenden, um neue adaptive Formulare zu erstellenoder adaptive Formulare zu AEM Sites-Seiten hinzuzufügen. Diese Komponenten stellen einen bedeutenden Fortschritt bei der Erstellung adaptiver Formulare dar und sorgen für beeindruckende Anwendererlebnisse. In diesem Artikel wird der ältere Ansatz zum Erstellen adaptiver Formulare mithilfe von Foundation-Komponenten beschrieben.

Übersicht overview

Mit Adobe Experience Manager(AEM)-Formularen können Sie komplexe Transaktionen in einfache, beeindruckende digitale Erlebnisse transformieren. Allerdings bedarf es gemeinsamer Anstrengungen, ein effizientes und produktives AEM Forms-System zu implementieren, zu erstellen, auszuführen und zu warten.

Dieses Dokument enthält Vorgaben und Empfehlungen, von denen Forms-Administratoren, Verfasser und Entwickler profitieren können, wenn sie mit AEM Forms und insbesondere mit adaptiven Formularkomponenten arbeiten. Es beschreibt bewährte Verfahren vom Einrichten eines Formularentwicklungsprojekts bis zum Konfigurieren, Anpassen, Authoring und Optimieren von AEM Forms. Diese bewährten Verfahren tragen zusammen zur Gesamtleistung des AEM Forms-Systems bei.

Darüber hinaus finden Sie hier einige Informationen für bewährte Verfahren zu AEM:

Einrichten und Konfigurieren von AEM Forms set-up-and-configure-aem-forms

Einrichten des Formularentwicklungsprojekts setting-up-forms-development-project

Eine vereinfachte und standardisierte Projektstruktur kann die Entwicklungs- und Wartungsbemühungen erheblich reduzieren. Apache Maven ist ein Open Source-Werkzeug, das zum Erstellen von AEM-Projekten empfohlen wird.

  • Verwenden Sie Apache Maven aem-project-archetype, um eine Struktur für AEM-Projekte zu erstellen und zu verwalten. Es werden empfohlene Strukturen und Vorlagen für Ihr AEM-Projekt erstellt. Darüber hinaus bietet es Versionsautomatisierungs- und Änderungskontrollsysteme, um das Projekt zu verwalten.

    • Verwenden Sie den Maven-Befehl archetype:generate, um die anfängliche Struktur zu generieren.
    • Verwenden Sie den Maven-Befehl eclipse:eclipse, um die Eclipse-Projektdateien zu generieren und das Projekt in Eclipse zu importieren.

Weitere Informationen finden Sie unter Erstellen von AEM-Projekten mit Apache Maven.

  • Mit dem FileVault-Werkzeug oder VLT können Sie den Inhalt einer CRX- oder AEM-Instanz auf Ihr Dateisystem zuordnen. Es bietet Änderungskontroll-Management-Vorgänge, wie z. B. das Einchecken und Auschecken des AEM-Projektinhalts. Siehe Vewenden des VLT-Tools.

  • Wenn Sie die integrierte Entwicklungsumgebung für Eclipse verwenden, können Sie AEM Developer Tools für eine nahtlose Integration der Eclipse IDE in AEM-Instanzen verwenden und AEM-Anwendungen erstellen. Weitere Informationen finden Sie unter AEM- Entwicklerwerkzeuge für Eclipse.

  • Speichern Sie keine Inhalte und nehmen Sie keine Änderungen im Ordner /libs vor. Erstellen Sie Überlagerungen in /app-Ordnern, um Standardfunktionen zu erweitern oder zu überschreiben.

  • Wenn Sie Pakete zum Verschieben von Inhalten erstellen, stellen Sie sicher, dass die Paketfilterpfade korrekt sind und nur erforderliche Pfade erwähnt werden.

  • Speichern Sie keine Inhalte und nehmen Sie keine Änderungen im Ordner /libs vor. Erstellen Sie Überlagerungen in /app-Ordnern, um Standardfunktionen zu erweitern oder zu überschreiben.

  • Definieren Sie die richtigen Abhängigkeiten für die Pakete, um eine vorab bestimmte Installationsreihenfolge zu erzwingen.

  • Erstellen Sie keinen referenzierbaren Knoten in /libs oder /apps.

Planen der Authoring-Umgebung planning-for-authoring-environment

Nachdem Sie Ihr AEM-Projekt eingerichtet haben, definieren Sie eine Strategie für das Authoring und Anpassen von Vorlagen für adaptive Formulare und Komponenten.

  • Eine adaptive Formularvorlage ist eine spezielle AEM-Seite, die die Struktur und die Informationen für Kopfzeile und Fußzeile eines adaptiven Formulars definiert. Eine Vorlage enthält vorkonfigurierte Layouts, Stile und eine einfache Struktur für ein adaptives Formular. AEM Forms bietet Standardvorlagen und -Komponenten, die Sie verwenden können, um adaptive Formulare zu erstellen. Sie können jedoch benutzerdefinierte Vorlagen und Komponenten entsprechend Ihren Anforderungen erstellen. Es wird empfohlen, Anforderungen für zusätzliche Vorlagen und Komponenten zu erfassen, die Sie in Ihren adaptiven Formularen benötigen. Weitere Informationen finden Sie unter Anpassen von adaptiven Formularen und Komponenten.

  • Mit AEM Forms können Sie adaptive Formulare erstellen, die auf folgenden Formularmodellen basieren. Die Formularmodelle fungieren als Schnittstelle für den Datenaustausch zwischen einem Formular und einem AEM-System und liefern eine XML-basierte Struktur für den Datenfluss innerhalb und außerhalb eines adaptiven Formulars. Außerdem legen die Formularmodelle die Regeln und Beschränkungen für adaptive Formulare in Form von Schema- und XFA-Beschränkungen fest.

    • Keines: Adaptive Formulare, die mit dieser Option erstellt wurden, verwenden kein Formularmodell. Die XML-Datendatei, die aus diesen Formularen generiert wird, hat eine flache Struktur mit Feldern und entsprechenden Werten.
    • XML- oder JSON-Schema: XML- und JSON-Schemata stellen die Struktur dar, in der Daten vom Back-End-System in Ihrer Organisation produziert oder genutzt werden. Sie können ein Schema mit einem adaptiven Formular verknüpfen und dem adaptiven Formular mithilfe der Elemente aus dem Schema dynamische Inhalte hinzufügen. Die Elemente des Schemas stehen auf der Registerkarte „Datenmodellobjekt“ des Inhalts-Browsers für das Erstellen von adaptiven Formularen zur Verfügung. Sie können die Schemaelemente zum Erstellen des Formulars ziehen und ablegen.
    • XFA-Formularvorlage: Dieses Formularmodell ist ideal, wenn bereits ein Bestand an XFA-basierten HTML5-Formularen vorhanden ist. Es bietet eine direkte Möglichkeit, Ihre XFA-basierten Formulare in adaptive Formulare zu konvertieren. Alle vorhandenen XFA-Regeln bleiben in den zugehörigen adaptiven Formularen erhalten. Die resultierenden adaptiven Formulare unterstützen XFA-Konstrukte, z. B. Überprüfungen, Ereignisse, Eigenschaften und Muster.
    • Formulardatenmodell: Dies ist das bevorzugte Formularmodell, wenn Sie Ihre Backend-Systeme wie Datenbanken, Web-Services und AEM-Benutzerprofile integrieren möchten, um adaptive Formulare vorauszufüllen und übermittelte Formulardaten zurück in die Backend-Systeme zu schreiben. Mit einem Formulardatenmodell-Editor können Sie Entitäten und Dienste in einem Formulardatenmodell definieren und konfigurieren, das Sie zum Erstellen adaptiver Formulare verwenden können. Weitere Informationen finden Sie unter AEM Forms-Datenintegration.

Es ist wichtig, das Datenmodell mit Bedacht auszuwählen, das nicht nur Ihren Anforderungen entspricht, aber Ihre bereits getätigten Investitionen in XSD-Asset XFA-Assets erweitert. Verwenden Sie das XSD-Modell, um Formularvorlagen zu erstellen, da die generierte XML Daten gemäß dem vom Schema definierten XPATH enthält. Die Verwendung des XSD-Modells als Standardoption für das Formulardatenmodell ist ebenfalls hilfreich, weil wegen der One-to-One-Zuweisung des Formularfelds der Formularentwurf vom Backend-System, das Daten verarbeitet und verbraucht, entkoppelt und die Leistung des Formulars verbessert wird. Außerdem kann BindRef des Felds als XPATH seines Datenwerts in XML verwendet werden.

Weitere Informationen finden Sie unter Erstellen eines adaptiven Formulars.

  • Es gibt einige gemeinsame Abschnitte für adaptive Formulare. Sie können sie identifizieren und eine Strategie definieren, um die Wiederverwendung von Inhalten zu fördern. Adaptive Formulare gestatten Ihnen, eigenständige Fragmente zu erstellen und sie in allen Formularen wiederzuverwenden. Zudem können Sie ein Panel in einem adaptiven Formular als Fragment speichern. Jede Änderung in einem Fragment wird in allen zugehörigen Formularen widergespiegelt. Dies hilft Ihnen, die Authoring-Zeit zu reduzieren, und gewährleistet die Konsistenz in allen Formularen. Darüber hinaus werden adaptive Formulare durch die Verwendung von Fragmenten einfacher, was insbesondere bei größeren Formularen zu einer verbesserten Authoring-Erfahrung führt. Weitere Informationen finden Sie unter Adaptive Formularfragmente.

Anpassen adaptiver Formulare und Komponenten customize-components

  • AEM Forms bietet vordefinierte adaptive Formularvorlagen, mit denen Sie adaptive Formulare erstellen können. Sie können auch eigene Vorlagen erstellen. AEM stellt statische und bearbeitbare Vorlagen bereit.

    • Statische Vorlagen werden von den Entwicklern definiert und konfiguriert.
    • Bearbeitbare Vorlagen werden von Autorinnen und Autoren mithilfe des Vorlageneditors erstellt. Mit dem Vorlageneditor können Sie eine grundlegende Struktur und den anfänglichen Inhalt einer Vorlage definieren. Jede Änderung der Strukturebene wird in allen Formularen, die diese Vorlage verwenden, widergespiegelt. Der anfängliche Inhalt kann vorkonfigurierte Designs, Vorfülldienste, Sendeaktionen usw. umfassen. Diese Einstellungen können jedoch mit dem Formulareditor für ein Formular geändert werden. Weitere Informationen finden Sie unter Adaptive Formularvorlagen.
  • Verwenden Sie Inline-Formatierung für die Formatierung einer bestimmten Feld- oder Bedienfeldinstanz. Stattdessen können Sie auch eine Klasse in einer CSS-Datei definieren und den Klassennamen in der CSS-Klasseneigenschaft der Komponente angeben.

  • Binden Sie eine Client-Bibliothek in eine Komponente ein, um Stile in allen adaptiven Formularen oder Fragmenten, die diese Komponente verwenden, konsistent anzuwenden. Weitere Informationen finden Sie unter Erstellen einer Seitenkomponente für adaptive Formulare.

  • Wenden Sie in einer Client-Bibliothek definierte Stile auf ausgewählte adaptive Formulare an, indem Sie den Pfad zur Client-Bibliothek im Feld „CSS-Dateipfad“ in den Eigenschaften des adaptiven Formular-Containers angeben.

  • Um eine Client-Bibliothek mit eigenen Stilen zu erstellen, können Sie die benutzerdefinierte CSS-Datei im Design-Editor unter dem Basisverzeichnis „clientlib“ oder in den Eigenschaften des Formular-Containers konfigurieren.

  • Adaptive Formulare bieten Bereichs-Layouts, z. B. responsive Layouts, Panels mit Registerkarten, Akkordeons und Assistenten, um zu steuern, wie Formularkomponenten in einem Bereich angeordnet werden. Sie können benutzerdefinierte Panel-Layouts erstellen und für Autorinnen und Autoren von Formularen verfügbar machen. Weitere Informationen finden Sie unter Erstellen benutzerdefinierter Layout-Komponenten für adaptive Formulare.

  • Sie können auch bestimmte adaptive Formularkomponenten wie Felder und das Panel-Layout anpassen.

    • Verwenden Sie die Funktion Überlagerung von AEM, um eine Kopie einer Komponente zu ändern. Es wird nicht empfohlen, Standardkomponenten zu ändern.
    • Um das Layout von vordefinierten adaptiven Formularkomponenten in /libs anzupassen, erstellen Sie benutzerdefinierte Layout-Komponenten zusätzlich zu den Standard-Layouts.
    • Führen Sie benutzerdefinierte Interaktivitäten ein, indem Sie benutzerdefinierte Widgets oder Erscheinungsbilder erstellen. Es wird nicht empfohlen, Standardkomponenten zu ändern. Weitere Informationen finden Sie unter Erscheinungsbild-Framework.
  • Weitere Informationen finden Sie unter Bearbeiten von persönlichen identifizierbaren Informationen für Vorschläge zum Umgang mit PII-Daten.

Erstellen von Formularvorlagen

Sie können ein adaptives Formular mithilfe der in Konfigurations-Browser aktivierten Formularvorlagen erstellen. Informationen zum Aktivieren der Formularvorlagen finden Sie unter Erstellen einer adaptiven Formularvorlage.

Die Formularvorlagen können auch aus Paketen mit adaptiven Formularen, die auf einem anderen Autoren-Computer erstellt werden, hochgeladen werden. Formularvorlagen werden durch die Installation von aemforms-references-* packages verfügbar gemacht. Zu den empfohlenen Best Practices gehören:

  • Der Ausführungsmodus nosamplecontent wird nur für Autor- und nicht für Veröffentlichungsknoten empfohlen.
  • Die Bearbeitung von Assets wie adaptiven Formularen, Designs, Vorlagen oder Cloud-Konfigurationen erfolgt nur über Autorknoten, die auf den konfigurierten Veröffentlichungsknoten veröffentlicht werden können.
    Weitere Informationen finden Sie unter Veröffentlichung von Formularen und Dokumenten und Veröffentlichungen rückgängig machen
  • Das Forms-Add-On-Paket ist für die Bearbeitung und Veröffentlichung erforderlich, um die Document Service-Vorgänge zu unterstützen. Daher kann es als Abhängigkeit betrachtet werden.
    Wenn Sie nur Forms-bezogene Beispielvorlagen, Designs und DOR-Pakete möchten, können Sie sie von aemforms-references-* packages herunterladen.

Weitere Informationen finden Sie im Abschnitt zu empfohlenen Vorgehensweisen unter Einführung in das Authoring adaptiver Formulare.

Erstellen adaptiver Formulare author-adaptive-forms

Verwenden Touch-optimierter Benutzeroberflächen für das Authoring using-touch-optimized-ui-for-authoring

  • Verwenden Sie den Objekt-Browser in der Seitenleiste, um schnell auf Felder in der Formularhierarchie zuzugreifen. Sie können im Suchfeld nach Objekten in der Formular- oder Objektstruktur, um von einem Objekt zu einem anderen zu navigieren.

  • Um die Eigenschaften einer Komponente im Komponenten-Browser in der Seitenleiste anzuzeigen, wählen Sie die Komponente aus und klicken Sie auf cmppr-1 . Sie können auch auf eine Komponente doppelklicken, um deren Eigenschaften im Eigenschaften-Browser anzuzeigen.

  • Verwenden Sie die Tastaturkürzel, um schnelle Aktionen in Ihren Formularen durchzuführen. Siehe Tastaturbefehle für AEM Forms.

  • Adaptive Formularkomponenten werden nur zur Verwendung auf adaptiven Formularseiten empfohlen. Die Komponenten weisen Abhängigkeiten von ihrer übergeordneten Hierarchie auf. Daher dürfen Sie diese nicht auf der AEM-Seite verwenden.

Weitere Informationen finden Sie außerdem unter „Komponentenbeschreibungen und optimale Verfahren“ in der Einführung in das Authoring adaptiver Formulare.

Verwenden von Regeln in adaptiven Formularen using-rules-in-adaptive-forms

AEM Forms bietet einen Regeleditor, der es Ihnen ermöglicht, Regeln zu erstellen, um dynamisches Verhalten zu adaptiven Formularkomponenten hinzuzufügen. Unter Verwendung dieser Regeln können Bedingungen ausgewertet werden und Aktionen auf Komponenten ausgelöst werden, wie z. B. Felder anzeigen oder ausblenden, Werte berechnen, Dropdownlisten dynamisch ändern und so weiter.

Der Regeleditor bietet einen visuellen Editor und einen Code-Editor zum Schreiben von Regeln. Beachten Sie beim Schreiben von Regeln im Code-Editor-Modus Folgendes:

  • Verwenden Sie aussagekräftige und eindeutige Namen für Formularfelder und Komponenten, um mögliche Konflikte beim Schreiben von Regeln zu vermeiden.

  • Verwenden Sie den this-Operator für eine Komponente, damit diese auf sich selbst in einem Regelausdruck verweist. Es wird sichergestellt, dass die Regel gültig bleibt, selbst wenn sich der Komponentenname ändert. Beispiel: field1.valueCommit script: this.value > 10.

  • Verwenden Sie Komponentennamen, wenn Sie auf verschiedene Formularkomponenten verweisen. Verwenden Sie die value-Eigenschaft, um den Wert eines Feldes oder einer Komponente abzurufen. Beispiel: field1.value.

  • Verweisen Sie auf Komponenten durch die relative eindeutige Hierarchie, um Konflikte zu vermeiden. Beispiel: parentName.fieldName.

  • Wenn Sie komplexe oder häufig verwendete Regeln verarbeiten, sollten Sie in Erwägung ziehen, Geschäftslogik als Funktionen in einer separaten Client-Bibliothek zu schreiben, die Sie über adaptive Formulare hinweg angeben und wiederverwenden können. Die Client-Bibliothek sollte eine eigenständige Bibliothek sein und darf keine externen Abhängigkeiten, außer von jQuery und Underscore.js haben. Sie können die Client-Bibliothek auch benutzen, um serverseitige erneute Überprüfung der übermittelten Formulardaten zu erzwingen.

  • Adaptive Formulare bieten eine Reihe von APIs, über die Sie kommunizieren und Aktionen für adaptive Formulare anzeigen können. Einige der wichtigsten APIs sind im Folgenden aufgeführt. Weitere Informationen finden Sie in der Referenz zur JavaScript-Bibliotheks-API für adaptive Formulare.

    • guideBridge.reset(): Setzt ein Formular zurück.

    • guideBridge.submit(): Versendet ein Formular.

    • guideBridge.setFocus(somExp, focusOption, runCompletionExp): Setzt den Fokus auf ein Feld.

    • guideBridge.validate(errorList, somExpression, focus): Validiert ein Formular.

    • guideBridge.getDataXML(options): Ruft Formulardaten als XML ab.

    • guideBridge.resolveNode(somExpression): Ruft ein Formularobjekt ab.

    • guideBridge.setProperty(somList, propertyName, valueList): Setzt die Eigenschaft eines Formularobjekts.

    • Darüber hinaus können Sie die folgenden Feldeigenschaften verwenden:

      • field.value, um den Wert eines Felds zu ändern.
      • field.enabled, um ein Feld zu aktivieren.
      • field.visible, um die Sichtbarkeit eines Felds zu ändern.
  • Autorinnen und Autoren adaptiver Formulare müssen möglicherweise JavaScript-Code schreiben, um Business-Logik in ein Formular zu integrieren. JavaScript ist zwar leistungsstark und effektiv, aber kann die Sicherheit beeinflussen. Daher müssen Sie sicherstellen, dass die Autorin bzw. der Autor des Formulars eine vertrauenswürdige Person ist und Prozesse zur Überprüfung und Genehmigung von JavaScript-Code vorhanden sind, bevor ein Formular produktiv eingesetzt wird. Admins können den Zugriff auf den Regeleditor für Benutzergruppen entsprechend ihrer Rolle oder Funktion beschränken. Siehe Gewähren von Zugriff auf den Regeleditor für ausgewählte Benutzergruppen.

  • Sie können Ausdrücke in Regeln verwenden, um adaptive Formulare dynamisch zu gestalten. Alle Ausdrücke sind gültige JavaScript-Ausdrücke und nutzen Scripting-Modell-APIs für adaptive Formulare. Diese Ausdrücke geben Werte bestimmter Typen zurück. Weitere Informationen zu Ausdrücken und optimalen Verfahren finden Sie unter Adaptive Formularausdrücke.

  • Adobe empfiehlt bei der Regelerstellung mit dem Regeleditor die Verwendung von synchronen statt asynchronen JavaScript-Vorgängen. Es wird dringend davon abgeraten, asynchrone Vorgänge zu verwenden. Wenn Sie sich jedoch in einer Situation befinden, in der asynchrone Vorgänge unvermeidbar sind, müssen JavaScript-Closure-Funktionen implementiert werden. So können Sie sich wirksam vor potenziellen Wettlaufsituationen schützen und Regelimplementierungen mit optimaler Leistung sowie Stabilität im gesamten System sicherstellen.

    Nehmen wir beispielsweise an, wir müssen Daten aus einer externen API abrufen und wenden dann einige auf diesen Daten basierende Regeln an. Wir setzen eine Closure ein, um den asynchronen API-Aufruf zu verarbeiten und sicherzustellen, dass die Regeln angewendet werden, nachdem die Daten abgerufen wurden. Dies ist der Beispiel-Code:

    code language-javascript
         function fetchDataFromAPI(apiEndpoint, callback) {
          // Simulate asynchronous API call with setTimeout
          setTimeout(() => {
            // Assuming the API call is successful, we receive some data
            const data = {
              someValue: 42,
            };
            // Invoke the callback with the fetched data
            callback(data);
          }, 2000); // Simulate a 2-second delay for the API call
        }
        // Rule implementation using Closure
        function ruleImplementation(apiEndpoint) {
          // Using a closure to handle the asynchronous API call and rule application
          // say you have set this value in street field inside address panel
          var streetField = address.street;
          fetchDataFromAPI(apiEndpoint, (data) => {
            streetField.value = data.someValue;
          });
        }
        // Example usage of the rule implementation
        const apiEndpoint = "https://example-api.com/data";
        ruleImplementation(apiEndpoint);
    

    In diesem Beispiel simuliert fetchDataFromAPI einen asynchronen API-Aufruf mithilfe von setTimeout. Nach dem Datenabruf wird die bereitgestellte Callback-Funktion aufgerufen, bei der es sich um die Closure zur Verarbeitung der nachfolgenden Regelanwendung handelt. Die Funktion ruleImplementation enthält die Regellogik.

Arbeiten mit Designs working-with-themes

Mit Designs für adaptive Formulare können Sie wiederverwendbare Stile erstellen, die formularübergreifend angewendet werden können, um Einheitlichkeit in Bezug auf Look und Stil zu erreichen. Verwenden Sie Designs, um die Formatierung für Formularkomponenten und Bedienfelder zu definieren. Einige Best Practices zu Designs lauten wie folgt:

  • Nutzen Sie die Asset-Bibliothek zur schnellen Anwendung von Textstilen, Hintergründen und Bildern. Wenn ein Stil in der Asset-Bibliothek hinzugefügt wird, steht er für andere Designs und im Stilmodus des Formulareditors zur Verfügung.
  • Wenden Sie globale Einstellungen, z. B. für Schrift und Seitenhintergrund, mithilfe der Auswahl auf Seitenebene an.
  • Verwenden Sie Client-Bibliotheken, um vorhandene oder erweiterte Stile in Ihre Designs zu importieren.
  • Sie können Stile für bestimmte Felder, Bereiche oder Schaltflächen in einer Formularstilebene außer Kraft setzen.
  • Wenn ein Design nicht Ihre Formatierungsanforderungen erfüllt, können Sie vordefinierte Klassen wie „guideFieldNode“, „guideFieldLabel“, „guideFieldWidget“ und „guidePanelNode“ verwenden, um einen gemeinsamen Stil formularübergreifend anzuwenden.

Weitere Informationen finden Sie unter Designs.

Optimieren der Leistung von großen und komplexen Formularen optimizing-performance-of-large-and-complex-forms

Formularautorinnen und -autoren sowie Endbenutzende sehen sich in der Regel mit Leistungsproblemen konfrontiert, wenn große Formulare im Authoring-Modus oder zur Laufzeit geladen werden. Wenn die Anzahl der Objekte (Felder und Bereiche) in den Formularen zunimmt, nimmt die Authoring- und Laufzeiterfahrung ab. Es wird außerdem verhindert, dass mehrere Autorinnen und Autoren zusammenarbeiten und ein Formular gleichzeitig bearbeiten.

Erwägen Sie die folgenden Best Practices, um Leistungsprobleme bei großen Formularen zu vermeiden:

  • Es wird empfohlen, adaptive Formulare mithilfe von XSD-Formulardatenmodellen zu erstellen, selbst bei Konvertierung einer XFA in ein adaptives Formular.

  • Schließen Sie nur die Felder und Bereiche in adaptiven Formularen, die Informationen vom Benutzer erfassen. Versuchen Sie, statische Inhalte auf ein Minimum zu reduzieren, oder verwenden Sie URLs, um sie in einem separaten Fenster zu öffnen.

  • Zwar wird jedes Formular für einen bestimmten Zweck entwickelt, dennoch gibt es bei den meisten Formularen auch gemeinsame Abschnitte. Ein Beispiel hierfür sind etwa persönliche Daten, die Adresse, Angaben zur Beschäftigung usw. Erstellen Sie adaptive Formularfragmente für allgemeine Formularelemente und -abschnitte und verwenden Sie diese in allen Formularen. Sie können auch ein Panel in einem vorhandenen Formular als Fragment speichern. Jede Änderung in einem Fragment wird in allen zugehörigen adaptiven Formularen widergespiegelt. Es unterstützt gemeinsames Authoring, da mehrere Verfasser an verschiedenen Fragmenten, die ein Formular bilden, gleichzeitig arbeiten können.

    • Ähnlich wie bei adaptiven Formularen wird empfohlen, dass alle fragmentspezifischen Stile und benutzerdefinierten Skripte mithilfe des Fragment-Container-Dialogfelds in der Client-Bibliothek definiert werden. Außerdem sollten Sie eigenständige Fragmente erstellen, die nicht von externen Objekten abhängig sind.
    • Außerdem sollten Sie Cross-Fragments-Skripterstellung vermeiden. Wenn es ein Objekt außerhalb des Fragments gibt, auf das Sie verweisen möchten, müssen Sie das Objekt als Teil des übergeordneten Formulars einarbeiten. Wenn sich das Objekt dennoch in einem anderen Fragment befinden muss, verweisen Sie im Skript anhand seines Namens darauf.
  • Verwenden Sie „Speichern und fortsetzen“ mit der automatischen Speicherung, um das adaptive Formular regelmäßig zu speichern und es Benutzenden zu ermöglichen, das Formular später erneut zu öffnen und zu vervollständigen.

  • Konfigurieren Sie Fragmente, um sie verzögert zu laden. Fragmente, die zur Laufzeit als „Verzögert laden“ markiert sind, werden nur gerendert, wenn sie erforderlich sind. Die Ladezeit für große Formulare wird dadurch erheblich reduziert. Dies wird außerdem in Fragmenten mit wiederholbaren Panels unterstützt. Weitere Informationen finden Sie unter Konfigurieren von verzögertem Laden.

    • Konfigurieren Sie Lazy Loading (verzögertes Laden) nicht in Fragmenten in einem Layout mit responsivem Raster oder im ersten Panel.
    • In verzögert geladenen Fragmenten werden keine Komponenten für Dateianhänge und Geschäftsbedingungen unterstützt.
    • Markieren Sie einen Wert in einem verzögert geladenen Panel mit „Wert global verwenden“, wenn dieser Wert in einem anderen Teil des Formulars verwendet wird, sodass der Wert für die Verwendung verfügbar ist, wenn das enthaltene Panel entladen wird.
    • Erwägen Sie, Sichtbarkeitsregeln für Fragmente zu erstellen, die basierend auf einer Bedingung ein- bzw. ausgeblendet werden sollen.
  • Legen Sie den Wert der Anzahl der Aufrufe pro Anfrage im Apache Sling Main Servlet auf eine recht große Zahl fest. Dadurch kann der Formular-Server zusätzliche Aufrufe zulassen. Die Konfiguration zeigt den Standardwert 1500 an. Dieser Wert (1500 Aufrufe) ist für andere Experience Manager-Komponenten wie Sites und Assets bestimmt. Der Standardwert für adaptive Formulare ist 20.000. Wenn Sie auf too many calls-Fehler in den Protokollen stoßen sollten oder das Formular nicht gerendert werden kann, versuchen Sie, den Wert auf eine große Zahl zu erhöhen, um das Problem zu beheben. Wenn die Anzahl der Aufrufe 20.000 überschreitet, bedeutet das, dass das Formular komplex ist und es einige Zeit dauern kann, das Formular im Browser zu rendern. Dies geschieht nur beim ersten Laden des Formulars. Danach wird das Formular zwischengespeichert, und sobald das Formular zwischengespeichert wurde, gibt es keine wesentliche Auswirkung mehr auf die Leistung.

Vorausfüllen adaptiver Formulare prefilling-adaptive-forms

Sie können Felder eines adaptiven Formulars mit Daten aus dem Backend vorbefüllen, um Benutzenden zu helfen, das Formular schnell auszufüllen und Tippfehler zu vermeiden.

  • AEM Forms bietet einen Vorbefüllungsdienst, um Daten aus einer vordefinierten XML-Datendatei zu lesen und die Felder eines adaptiven Formulars mit dem Inhalt der XML-Vorbefüllungsdatei vorab auszufüllen.

  • Die XML-Datei mit den Vorbefüllungsdaten muss mit dem Schema des Formularmodells, das mit dem adaptiven Formular verknüpft ist, konform sein.

  • Schließen Sie die AbschnitteafBoundedData undafUnBoundedData in die Prefill-XML zum Vorbefüllen von gebundenen und ungebundenen Feldern in einem adaptiven Formular ein.

  • Für adaptive Formulare, die auf dem Formulardatenmodell basieren, bietet AEM Forms einen sofort einsatzbereiten Vorbefüllungs-Service für Formulardatenmodelle an. Der Vorbefüllungsdienst fragt Datenquellen für Datenmodellobjekte im adaptiven Formular ab und trägt Feldwerte beim Rendern des Formulars vorab ein.

  • Sie können auch die Datei-, CRX-, Dienst- oder HTTP-Protokolle zum Vorausfüllen adaptiver Formulare verwenden.

  • AEM Forms unterstützt benutzerdefinierte Vorbefüllungsdienste, die Sie als OSGi-Dienst einbinden können, um adaptive Formulare vorauszufüllen.

Weitere Informationen finden Sie unter Vorbefüllen der Felder in adaptiven Formularen.

Signieren und Übermitteln adaptiver Formulare signing-and-submitting-adaptive-forms

Adaptive Formulare benötigen Übermittlungsaktionen für die Verarbeitung der von Benutzern angegebenen Daten. Eine Sendeaktion bestimmt die Aufgabe, die auf die mithilfe eines adaptiven Formulars übermittelten Daten angewendet wird.

Sie können Adobe Sign in adaptiven Formularen mit mehreren Signaturen verwenden. Beachten Sie die folgenden Punkte bei der Konfiguration von Adobe Sign in adaptiven Formularen.  Weitere Informationen finden Sie unter Verwenden von Adobe Sign in einem adaptiven Formular.

  • Adobe Sign-aktiviertes Formular wird nur gesendet, nachdem alle Unterzeichner das Formular unterzeichnet haben. Formulare werden im Status „Ausstehende Signatur“ angezeigt, bis das Formular von allen Signierern unterzeichnet wurde.
  • Sie können die Funktion des Unterzeichnens im Formular konfigurieren oder Unterzeichnende beim Absenden auf eine neue Signaturseite umleiten.
  • Konfigurieren Sie das sequenzielle oder parallele Signieren nach Bedarf.

Generieren eines Datensatzdokuments generating-document-of-record

Ein Datensatzdokument (Document of Record, DoR) ist eine komprimierte PDF-Version eines adaptiven Formulars, die Sie drucken, signieren oder archivieren können.

  • Je nach dem Formular-Datenmodell, auf dem ein adaptives Formular basiert, können Sie eine Vorlage für ein DoR wie folgt konfigurieren:

    • XFA-Formularvorlage: Verwendet die zugeordnete XDP-Datei als DoR-Vorlage.
    • XSD-Schema: Verwendet die zugeordnete XFA-Vorlage, die das gleiche XML-Schema wie das adaptive Formular verwendet.
    • Ohne: Verwendet ein automatisch generiertes DoR.
  • Konfigurieren Sie Kopf- und Fußzeile, Bilder, Farbe, Schriftart usw. direkt auf der Registerkarte Datensatzdokument des adaptiven Formulareditors.

  • Verwenden Sie DoRService, um das DoR programmatisch zu generieren.

  • Ausgeblendete Felder aus DoR ausschließen.

  • Verwenden Sie den Aufforderungsparameter afAcceptLang; um DoR in einem anderen Gebietsschema anzuzeigen.

Debuggen und Testen von adaptiven Formularen debugging-and-testing-adaptive-forms

Das AEM-Chrome-Plug-in ist eine Browser-Erweiterung für Google Chrome, die Tools zum Debugging adaptiver Formulare bereitstellt. Formularautorinnen und -autoren sowie Entwickelnde können diese Tools für Folgendes verwenden:

  • Identifizieren von Engpässen und Optimieren der Leistung der Formularwiedergabe
  • Debuggen von Schlüsselwörtern und bindRef-Fehlern im Formular
  • Aktivieren und Konfigurieren von Protokollen
  • Debuggen von Regeln und Skripten im Formular
  • Erkunden von guideBridge APIs, um mehr darüber zu erfahren

Weitere Informationen finden Sie unter AEM-Plug-In für Chrome – Adaptive Formulare.

Validieren von adaptiven Formularen auf dem AEM-Server validating-adaptive-forms-on-aem-server

Serverseitige Überprüfungen sind erforderlich, um alle Versuche zu verhindern, die Überprüfungen auf dem Client und mögliche Gefahren von Datenübertragungen und Verletzungen von Geschäftsregeln umgehen wollen. Server-seitige Validierungen werden auf dem Server ausgeführt, indem die erforderliche Client-Bibliothek geladen wird.

  • Schließen Sie Funktionen in einer Client-Bibliothek für die Validierung von Ausdrücken in adaptiven Formularen ein und legen Sie die Client-Bibliothek im Dialogfeld von adaptiven Formular-Containern fest.  Weitere Informationen finden Sie unter Server-seitige erneute Validierung.
  • Die Server-seitige Validierung prüft das Formularmodell. Es wird empfohlen, eine separate Client-Bibliothek für Validierungen zu erstellen und sie nicht mit anderen Elementen wie HTML-Stil und DOM-Manipulation in derselben Client-Bibliothek zu mischen.

Lokalisieren von adaptiven Formularen localizing-adaptive-forms

AEM bietet Übersetzungs-Workflows, die Sie zur Lokalisierung adaptiver Formulare verwenden können.  Siehe Verwenden von AEM-Übersetzungs-Workflows zum Lokalisieren adaptiver Formulare.

Einige Best Practices beim Lokalisieren von adaptiven Formularen lauten wie folgt:

  • Verwenden Sie adaptive Formularfragmente für gängige Elemente in Formularen und lokalisieren Sie Fragmente. Das stellt sicher, dass Sie ein Fragment einmal lokalisieren und es dann in allen Formularen reflektiert wird, in denen das Fragment verwendet wird.

  • Alle Modifizierungen wie das Hinzufügen einer neuen Komponente oder das Anwenden eines Skripts in einem lokalisierten Formular werden nicht automatisch lokalisiert.  Daher müssen Sie ein Formular vor der Lokalisierung fertigstellen, um mehrere Lokalisierungszyklen zu vermeiden.

  • Verwenden Sie den Anforderungsparameter afAcceptLang, um das Browsergebietsschemazu überschreiben und das Formular in einem spezifischen Gebietsschema zu lokalisieren. Beispielsweise wird die folgende URL gezwungen, das Formular in japanischem Gebietsschema wiederzugeben, unabhängig von dem in der Browsereinstellung angegebenen Gebietsschema:

    https://'[server]:[port]'/<contextPath>/<formFolder>/<formName>.html?wcmmode=disabled&afAcceptLang=ja

  • AEM Forms unterstützt die Lokalisierung von Inhalten adaptiver Formulare derzeit für die Gebietsschemata Englisch (en), Spanisch (es), Französisch (fr), Italianisch (it), Deutsch (de), Japanisch (ja), Portugiesisch – Brasilien (pt-BR), Chinesisch (zh-CN), Chinesisch – Taiwan (zh-TW) und Koreanisch (ko-KR). Sie können jedoch zur Laufzeit Unterstützung für neue Gebietsschemata für adaptive Formulare hinzufügen. Weitere Informationen finden Sie unter Unterstützung neuer Gebietsschemata zum Lokalisieren von adaptiven Formularen.

Vorbereiten von Formularprojekten für die Produktion prepare-forms-project-for-production

Hinzufügen eines Servers zur Formularverarbeitung adding-forms-processing-server

Sie können eine weitere Instanz des AEM Forms-Servers konfigurieren, der sich hinter der Firewall in einem geschützten Bereich befindet. Sie können diese Instanz für Folgendes verwenden:

  • Stapelverarbeitung: Aufträge, die wiederkehrend sind oder in Stapeln mit hoher Belastung geplant werden. Beispiele hierfür sind das Drucken von Anweisungen, Generieren von Korrespondenz und Verwenden von Dokumentendiensten wie PDF Generator, Output und Assembler.
  • Speichern personenbezogener Daten: Speicherung personenbezogener Daten auf dem Verarbeitungs-Server. Dies ist nicht erforderlich, wenn Sie bereits einen benutzerdefinierten Speicheranbieter zum Speichern personenbezogener Daten nutzen.

Verschieben eines Projekts in eine andere Umgebung moving-project-to-another-environment

Oft müssen Sie AEM-Projekte aus einer Umgebung in eine andere verschieben. Einige der wichtigsten Aspekte beim Verschieben lauten wie folgt:

  • Erstellen Sie ein Backup von vorhandenen Client-Bibliotheken, benutzerdefiniertem Code und Konfigurationen.
  • Stellen Sie Produktpakete und Patches manuell und in der angegebenen Reihenfolge in der neuen Umgebung bereit.
  • Stellen Sie projektspezifische Code-Pakete und Bundles manuell und als separates Paket bzw. Bundle auf dem neuen AEM-Server bereit.
  • (Nur AEM Forms auf JEE) Manuelle Bereitstellung von LCAs und DSCs auf dem Forms Workflow-Server.
  • Verwenden Sie Export-Import-Funktionen, um Assets in die neue Umgebung zu verschieben. Sie können auch den Replikationsagenten konfigurieren und die Assets veröffentlichen.
  • Ersetzen Sie bei der Aktualisierung alle veralteten APIs und Funktionen durch neue APIs und Funktionen.

Konfigurieren von AEM configuring-aem

Einige Best Practices zum Konfigurieren von AEM für eine bessere Gesamtleistung lauten wie folgt:

  • Aktivieren Sie HTML-Client-Bibliothekskomprimierung für JavaScript und CSS-Code aus der Felix-Konsole.

  • Speichern Sie alle Client-Bibliotheken unter /etc.clientlibs/fd und alle zusätzlichen benutzerdefinierten Client-Bibliotheken auf dem AEM-Dispatcher zwischen, um die Interaktivität und Sicherheit Ihrer veröffentlichen Formulare zu erhöhen. Weitere Informationen finden Sie unter Dispatcher

  • Speichern Sie keine /content/forms/af/- und /content/dam/formsanddocuments/*-Pfade im Cache. Detaillierte Informationen zum Konfigurieren der Zwischenspeicherung adaptiver Formulare finden Sie unter Zwischenspeichern adaptiver Formulare.

  • Aktivieren Sie HTML über das Webserver-Komprimierungsmodul. Weitere Informationen finden Sie im Abschnitt Leistungsoptimierung des AEM Forms-Servers.

  • Erhöhen Sie die Aufrufe per Anfragekonfiguration für große Formulare. Siehe Optimieren der Leistung von großen und komplexen Formularen.

  • Erstellen Sie benutzerdefinierte, vom Fehler-Handler angezeigte Fehlerseiten.

  • Sichere AEM Forms-Server.

    • Verwenden Sie nosamplecontent-Laufzeitmodus unter, um sicherzustellen, dass die Anwendung keine Beispielinhalte und Beispielbenutzer enthält, die auf dem Produktionsserver bereitgestellt werden. Siehe Ausführen von AEM im produktionsfertigen Modus.
  • Halten Sie die Heap-Größe bei mindestens 8 GB. Für andere Einstellungen finden Sie weitere Informationen im Abschnitt Leistungsoptimierung des AEM Forms-Servers.

  • Verwenden Sie Dienstbenutzersitzungen anstelle von Admin-Sitzungen zum Ausführen von Aufgaben auf Dienstebene. Weitere Informationen finden Sie unter Dienstauthentifizierung.

Konfigurieren von externem Speicher für Entwürfe und übermittelte Formulardaten external-storage

In einer Produktionsumgebung wird empfohlen, übermittelte Formulardaten nicht im AEM-Repository zu speichern. Bei der Standardimplementierung der Übermittlungsaktionen „Formularportal-Speicher“, „Inhalt speichern“ und „PDF speichern“ werden Formulardaten im AEM-Repository gespeichert. Diese Übermittlungsaktionen dienen nur zu Demonstrationszwecken. Die Funktionen „Speichern und fortsetzen“ und Automatische Speicherung“ verwenden auch standardmäßig Portalspeicher. Beachten Sie daher folgende Empfehlungen:

  • Speichern von Entwurfsdaten: Wenn Sie die Funktion „Entwurf“ in ein adaptiven Formularen verwenden, müssen Sie eine benutzerdefinierte Service Provide Interface (Dienstanbieterbenutzeroberfläche, SPI) verwenden, um Entwurfsdaten in einem sichereren Speicher wie in einer Datenbank zu speichern. Weitere Informationen finden Sie unter Beispiel zur Integrierung der Komponente für Entwurf und Übermittlung in die Datenbank.

  • Speichern von Übermittlungsdaten: Wenn Sie den Formularportalübermittlungs-Store verwenden, sollten Sie eine benutzerdefinierte SPI implementieren, um Übermittlungsdaten in einer Datenbank zu speichern. Siehe Beispiel für die Integration der Komponente für Entwürfe und Übermittlungen mit der Datenbank für ein Integrationsbeispiel.

    Sie können auch eine benutzerdefinierte Übermittlungsaktion schreiben, die Formulardaten und Anhänge in einem sicheren Speicher speichert. Weitere Informationen finden Sie unter Schreiben einer benutzerdefinierten Sendeaktion für adaptive Formulare.

  • Länge der Entwurfs-ID: Wenn Sie ein adaptives Formular als Entwurf speichern, wird eine Entwurfs-ID generiert, um den Entwurf eindeutig zu identifizieren. Der Mindestwert für die Länge des Entwurfs-ID-Felds beträgt 26 Zeichen. Adobe empfiehlt, die Länge der Entwurfs-ID auf 26 oder mehr Zeichen festzulegen.

Umgang mit personenbezogenen Daten handling-personally-identifiable-information

Eine der größten Herausforderungen für Unternehmen besteht im Umgang mit personenbezogenen Daten (Personally Identifiable Information, PII). Einige Best Practices, die Ihnen beim Umgang mit solchen Daten helfen können, lauten wie folgt:

  • Verwenden Sie einen sicheren externen Speicherort wie eine Datenbank, um Daten aus Entwürfen und übermittelten Formularen zu speichern. Siehe Konfigurieren von externem Speicher für Entwürfe und eingereichte Formulardaten.
  • Verwenden Sie die Formularkomponente „Geschäftsbedingungen“, um die ausdrückliche Zustimmung der Benutzenden vor Aktivierung der automatischen Speicherung einzuholen. Aktivieren Sie in diesem Fall die automatische Speicherung nur, wenn die Benutzenden den Bedingungen in der Komponente „Geschäftsbedingungen“ zustimmen.
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2