Show Menu
THEMEN×

Schulung: Formulardatenmodell erstellen

Diese Schulung ist ein Schritt in der Serie Erstellen Sie Ihr erstes adaptives Formular . Es wird empfohlen, der Serie in chronologischer Reihenfolge zu folgen, um den vollständigen Anwendungsfall zu verstehen, auszuführen und zu demonstrieren.

Über die Schulung

AEM Forms data integration module allows you to create a form data model from disparate backend data sources such as AEM user profile, RESTful web services, SOAP-based web services, OData services, and relational databases. Sie können Datenmodellobjekte und -Dienste in einem Formulardatenmodell konfigurieren und einem adaptiven Formular zuordnen. Adaptive Formularfelder sind an Datenmodellobjekteigenschaften gebunden. Mit den Diensten können Sie das adaptive Formular vorab befüllen und gesendete Formulardaten zurück an das Datenmodellobjekt schreiben.
Weitere Informationen zum Formulardatenmodell und zur Formulardatenintegration finden Sie unter Datenintegration für AEM Forms .
Diese Schulung führt Sie durch die Schritte zum Vorbereiten, Erstellen, Konfigurieren und Zuordnen eines Formulardatenmodells mit einem adaptiven Formular. Am Ende dieser Schulung können Sie Folgendes:
Das Formulardatenmodell sieht etwa wie folgt aus:
A. Configured data sources B. Data source schemas C. Available services D. Data model objects E. Configured services

Voraussetzungen

Bevor Sie beginnen, stellen Sie Folgendes sicher:

Schritt 1: Konfigurieren der MySQL-Datenbank als Datenquelle

Sie können verschiedene Arten von Datenquellen konfigurieren, um ein Formulardatenmodell zu erstellen. Für diese Schulung werden wir die MySQL-Datenbank, die Sie konfiguriert und mit Beispieldaten befüllt haben, konfigurieren. Informationen zu anderen unterstützten Datenquellen und deren Konfiguration finden Sie unter AEM Forms-Datenintegration .
Do the following to configure your MySQL database:
  1. Install JDBC driver for MySQL database as an OSGi bundle:
    1. Log in to AEM Forms Author Instance as an administrator and go to AEM web console bundles. The default URL is https://localhost:4502/system/console/bundles .
    2. Tap Install/Update . Ein Dialogfeld Pakete hochladen/installieren wird angezeigt.
    3. Tap Choose File to browse and select the MySQL JDBC driver OSGi bundle. Select Start Bundle and Refresh Packages , and tap Install or Update . Ensure that the Oracle Corporation's JDBC Driver for MySQL is active. Der Treiber wird installiert.
  2. Configure MySQL database as a data source:
    1. Suchen Sie die Konfiguration Apache Sling Connection Pooled DataSource . Tippen Sie, um die Konfiguration im Bearbeitungsmodus zu öffnen.
    2. Geben Sie im Konfigurationsdialog die folgenden Details an:
      • Datenquellenname: Sie können einen beliebigen Namen angeben, beispielsweise WeRetailMySQL .
      • Name der DataSource-Diensteigenschaft : Geben Sie den Namen der Diensteigenschaft an, die den DataSource-Namen enthält. Er wird beim Registrieren der Datenquelleninstanz als OSGi-Dienst angegeben. Zum Beispiel: datasource.name .
      • JDBC-Treiberklasse : Geben Sie den Java-Klassennamen des JDBC-Treibers an. For MySQL database, specify com.mysql.jdbc.Driver .
      • JDBC-Verbindungs-URI : Geben Sie die Verbindungs-URL der Datenbank an. Für MySQL Datenbanken, die auf Port 3306 ausgeführt werden, und für Schema, das über Ethernet verfügt, lautet die URL: jdbc:mysql://'server':3306/weretail?autoReconnect=true&useUnicode=true&characterEncoding=utf-8
      • Benutzername: Benutzername der Datenbank. Es ist erforderlich, den JDBC-Treiber zu aktivieren, um eine Verbindung mit der Datenbank herzustellen.
      • Kennwort: Kennwort für die Datenbank. Es ist erforderlich, den JDBC-Treiber zu aktivieren, um eine Verbindung mit der Datenbank herzustellen.
      • Test auf Borge: Aktivieren Sie die Option Test on Borrow .
      • Test on Return: Aktivieren Sie die Option Test on Return.
      • Validation Query: Geben Sie eine SQL SELECT-Abfrage ein, damit Verbindungen aus dem Pool validiert werden. Die Abfrage muss mindestens eine Zeile zurückgeben. Beispiel: Wählen Sie * aus Kundendaten .
      • Transaktions-Isolierung : Setzen Sie den Wert auf READ_COMMITTED .
        Leave other properties with default values and tap Save .
        Eine Konfiguration ähnlich der folgenden wird erstellt.

Schritt 2: Erstellen eines Formulardatenmodells

AEM Forms provides an intuitive user interface to create a form data model from configured data sources. Sie können mehrere Datenquellen in einem Formulardatenmodell verwenden. For our use case, we will use the configured MySQL data source.
Gehen Sie folgendermaßen vor, um ein Formulardatenmodell zu erstellen:
  1. Navigieren Sie in der AEM-Autoreninstanz zu Formulare Datenintegration .
  2. Tippen Sie auf  Erstellen Formulardatenmodell .
  3. Geben Sie im Dialogfeld „Formulardatenmodell erstellen“ einen Namen für das Formulardatenmodell ein. Zum Beispiel customer-shipping-billing-details . Tippen Sie auf Weiter .
  4. Im Bildschirm „Datenquelle auswählen“ werden alle konfigurierten Datenquellen angezeigt. Select WeRetailMySQL data source and tap Create .
The customer-shipping-billing-details form data model is created.

Schritt 3: Konfigurieren eines Formulardatenmodells

Zum Konfigurieren eines Formulardatenmodells gehört Folgendes:
  • Hinzufügen von Datenmodellobjekten und Diensten
  • Konfigurieren von Lese- und Schreibdiensten für Datenmodellobjekte
Gehen Sie folgendermaßen vor, um das Formulardatenmodell zu konfigurieren:
  1. On AEM author instance, navigate to Forms > Data Integrations . The default URL is https://localhost:4502/aem/forms.html/content/dam/formsanddocuments-fdm .
  2. The customer-shipping-billing-details form data model you created earlier is listed here. Öffnen Sie es im Bearbeitungsmodus.
    Die ausgewählte Datenquelle WeRetailMySQL wird im Formulardatenmodell konfiguriert.
  3. Erweitern Sie den WeRailMySQL-Datenquellenbaum. Select the following data model objects and services from weretail > customerdetails schema to form data model:
    • Datenmodellobjekte :
      • id
      • name
      • shippingAddress
      • city
      • state
      • zipcode
    • Dienste:
      • get
      • Aktualisieren
    Tippen Sie auf Ausgewählte hinzufügen , um dem Formulardatenmodell ausgewählte Datenmodellobjekte und Dienste hinzuzufügen.
    Die standardmäßigen get-, update- und insert-Dienste für JDBC-Datenquellen werden standardmäßig mit dem Formulardatenmodell bereitgestellt.
  4. Konfigurieren Sie Lese- und Schreibdienste für Datenmodellobjekte.
    1. Wählen Sie das Datenmodellobjekt customerdetails und tippen Sie auf Eigenschaften bearbeiten .
    2. Wählen Sie aus dem Dropdown-Menü „Lesedienst“ get. Das Argument id , das der Primärschlüssel im Datenmodellobjekt des „customerdetails“ ist, wird automatisch hinzugefügt. Tap and configure the argument as follows.
    3. Wählen Sie ebenfalls update als Schreibdienst. Das Objekt customerdetails wird automatisch als Argument hinzugefügt. Das Argument ist wie folgt konfiguriert.
      Fügen Sie das Argument id hinzu und konfigurieren Sie es wie folgt.
    4. Tippen Sie auf Fertig , um die Eigenschaften des Datenmodellobjekts zu speichern. Then, tap Save to save the form data model.
      Die Dienste get und update werden als Standarddienste für das Datenmodellobjekt hinzugefügt.
  5. Wechseln Sie zur Registerkarte Dienste und konfigurieren Sie die Dienste get und update .
    1. Select the get service and tap Edit Properties . Das Dialogfeld „Eigenschaften“ wird geöffnet.
    2. Geben Sie im Dialogfeld „Eigenschaften bearbeiten“ Folgendes an:
      • Titel : Geben Sie den Titel des Dienstes an. Beispiel: Lieferadresse abrufen.
      • Beschreibung : Geben Sie eine Beschreibung an, die das detaillierte Funktionieren des Dienstes enthält. Beispiel:
        This service retrieves shipping address and other customer details from MySQL database
      • Ausgabemodellobjekt : Wählen Sie ein Schema mit Kundendaten. Beispiel:
        customerdetail Schema
      • Array zurückgeben : Deaktivieren Sie die Option Array zurückgeben .
      • Argumente : Wählen Sie das Argument mit dem Namen ID .
      Tippen Sie auf Fertig . Der Dienst zum Abrufen von Kundendaten aus der MySQL-Datenbank ist konfiguriert.
    3. Select the update service and tap Edit Properties . Das Dialogfeld „Eigenschaften“ wird geöffnet.
    4. Specify the following in the Edit Properties dialog:
      • Titel : Geben Sie den Titel des Dienstes an. Beispiel: Lieferadresse aktualisieren.
      • Beschreibung : Geben Sie eine Beschreibung an, die das detaillierte Funktionieren des Dienstes enthält. Beispiel:
        This service updates shipping address and related fields in MySQL database
      • Eingabemodellobjekt : Wählen Sie ein Schema mit Kundendaten. Beispiel:
        customerdetail Schema
      • Ausgabetyp : Wählen Sie BOOLEAN .
      • Argumente : Wählen Sie das Argument mit dem Namen ID und customerdetails .
      Tippen Sie auf Fertig . The update service to update customer details in the MySQL database is configured.
Das Datenmodellobjekt und die Dienste im Formulardatenmodell sind konfiguriert. Sie können nun das Formulardatenmodell testen.

Schritt 4: Testen eines Formulardatenmodells

Sie können das Datenmodellobjekt und die Datendienste testen, um sicherzustellen, dass das Formulardatenmodell ordnungsgemäß konfiguriert ist.
Führen Sie folgende Schritte aus, um den Test durchzuführen:
  1. Wechseln Sie auf die Registerkarte Modell , wählen Sie das Datenmodellobjekt customerdetails und tippen Sie auf Modellobjekt testen .
  2. Wählen Sie im Fenster Modell/Dienst testen Modellobjekt lesen aus der Dropdown-Liste Modell/Dienst auswählen auswählen.
  3. In the customerdetails section, specify a value for the id argument that exists in the configured MySQL database and tap Test .
    Die Kundendetails, die der angegebenen ID zugeordnet sind, werden abgerufen und im Abschnitt Ausgabe angezeigt, wie unten gezeigt.
  4. In ähnlicher Weise können Sie das Schreibmodellobjekt und die Dienste testen.
    Im folgenden Beispiel aktualisiert der Aktualisierungsdienst die Adressdetails für die ID 7102715 in der Datenbank erfolgreich.
    Wenn Sie nun den Lesemodelldienst für die ID 7107215 erneut testen, werden die aktualisierten Kundendetails abgerufen und angezeigt (siehe unten).