Sie sehen sich Hilfeinhalte der folgenden Version an:
- 6.2
- Ältere Versionen
Sie können Webservices in AEM Forms verwenden, um Felder in einem Formular auszufüllen. AEM Forms unterstützt die Webdienste, beschrieben im Web Services Description Language (WSDL) 1.1 mit Dokument/wörtlichem Stil und die SOAP-Endpunkte haben. Stellen Sie sich ein Szenario vor, in dem Sie eine wöchentliche Wettervorhersage für die Postleitzahl anzeigen möchten, die vom Benutzer angegeben wurde. Sie können eine Inhaltsregel zum Verwenden eines bestehenden Webdiensts erstellen, um die Wettervorhersagedaten abzurufen und die Daten dann im Formular wiederzugeben.
Sie können entweder die URL des Dienstes direkt angeben, während Sie eine Regel erstellen, oder einen Webdienst in CRX vorkonfigurieren, um den Webdienst im Regeleditor als Menüelement zur Verfügung zu stellen. In diesem Artikel wird beschrieben, wie Sie einen Webdienst in CRX mit bestimmten Eingabe- und Ausgabeparametern so vorkonfigurieren, dass sie im Regeleditor verfügbar sind.
Wenn Sie eine solche Regel im Regeleditor zu erstellen, gelten folgende Voraussetzungen:
- Ein adaptives Formular mit den entsprechenden Formularobjekten: je ein Formularobjekt für jeden Eingabeparameter und je ein Formularobjekt zum Anzeigen der Ausgabeparameter (hier nur einer für die Anzeige der Wettervorhersage)
- Vorkonfigurieren des Webdiensts in CRX mit den Eingabe- und Ausgabeparametern
Das Beispiel in diesem Artikel verwendet den Wetter-Webdienst von www.cdyne.com. Weitere Informationen zu diesem Wetter-Webdienst finden Sie im Dokument Spezifikationen für Weather-Webdienst.
Sie können die angehängte Datei „Weather_WSDL.zip“ direkt auf CRX hochladen, damit dieses Beispiel funktioniert.
Herunterladen
AEM Forms unterstützt die Webdienste, beschrieben im Web Services Description Language (WSDL) 1.1 mit Dokument/wörtlichem Stil und die SOAP-Endpunkte haben. Führen Sie die folgenden Schritte aus, um einen Webservice in CRX für den Regeleditor vorzukonfigurieren:
-
Hinweis:
Erstellen Sie den Webdienstknoten nur im Apps-Ordner. Standardmäßig können Webdienste im Ordner „Apps und Libs“ eingerichtet werden. Der Administrator kann jedoch mindestens einen Speicherort im CRX konfigurieren, wo die Benutzer der adaptiven Formulare die Webdienste konfigurieren können. Das kann erforderlich sein, da die Benutzer möglicherweise keinen Zugriff auf den Ordner „Apps und Libs“ in CRX haben. Weitere Informationen finden Sie unter Konfigurieren von Webdienstspeicherorten in CRX.
-
Fügen Sie die folgenden Eigenschaften dem neu erstellten Knoten (hier GetCityForecastByZip) hinzu und klicken Sie auf Alle speichern:
Eigenschaft Typ Beschreibung Wert guideComponentType Zeichenfolge Eine Konstante, die die als Webdienst identifizierte Konfiguration angibt fd/af/webServices url Zeichenfolge URL des Webdiensts, den Sie einrichten http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL jcr:title Zeichenfolge Der Name des Webdiensts, wie er in der Dropdown-Liste des Regeleditors angezeigt wird Wöchentliches Wetter einer Stadt operation Zeichenfolge Die Ausführung des Webdiensts, der eingerichtet wird GetCityForecastByZIP -
Erstellen Sie unter dem Knoten mit dem Namen „input“ Unterknoten für jeden der Parameter, die Sie vorkonfigurieren möchten. Im Szenario mit dem Wetter-Webdienst erstellen Sie einen Knoten, damit der Benutzer seine Postleitzahl eingeben kann.
Führen Sie die folgenden Schritte aus, um einen Knoten für den Parameter „input“ zu erstellen:
Hinweis:
Wenn Sie keinen Eingabeknoten hinzufügen, werden das Formularobjekt und die Regel mit allen Eingabeparametern im Webdienst ausgefüllt.
-
Fügen Sie die Eigenschaften dem untergeordneten Knoten hinzu. Im Szenario mit dem Wetter-Webdienst fügen Sie dem untergeordneten Knoten die folgenden Eigenschaften hinzu und klicken auf Alle speichern:
Eigenschaft Typ Beschreibung Wert id Zeichenfolge ID des Eingabeparameters wie im Webdienst Postleitzahl jcr:title Zeichenfolge Name des Eingabeparameters, wie er dem Benutzer angezeigt wird Postleitzahl defaultValue Zeichenfolge Standardwert für den Parameter 90028 hide Boolesch Legt fest, ob der Parameter ausgeblendet wird False Hinweis:
Wenn die Eigenschaft „hide“ auf „True“ festgelegt ist, müssen Sie einen Wert für die Eigenschaft „defaultValue“ angeben, da der Benutzer nicht in der Lage ist, den Eingabeparameter anzuzeigen und einen Wert anzugeben.
-
Erstellen Sie unter dem Knoten mit dem Namen „output“ Unterknoten für jeden der Ausgabeparameter, den Sie in Ihre Konfiguration einschließen und dem Benutzer anzeigen möchten.
Führen Sie die folgenden Schritte aus, um einen Knoten (hier „weather Date“) für den Parameter „output“ zu erstellen:
Hinweis:
Wenn Sie keinen Ausgabeknoten hinzufügen, werden das Formularobjekt und die Regel mit allen Ausgabeparametern im Webdienst ausgefüllt.
-
Fügen Sie die Eigenschaften dem untergeordneten Knoten hinzu.
Im Szenario mit dem Wetter-Webdienst fügen Sie dem untergeordneten Knoten die folgenden Eigenschaften hinzu und klicken auf Alle speichern:
Eigenschaft Typ Beschreibung Wert id Zeichenfolge ID des Ausgabeparameters wie im Webdienst. Für die ID muss die Groß-/Kleinschreibung beachtet werden. GetCityForecastByZIPResponse.GetCityForecastByZIPResult.
ForecastResult.Forecast.Date
jcr:title Zeichenfolge Name des Ausgabeparameters, wie er dem Benutzer angezeigt wird Datum Erstellen Sie mit den obigen Schritten einen zweiten Unterknoten (here: Wetterbeschreibung) und fügen Sie die folgenden Eigenschaften zum Unterknoten hinzu:
Eigenschaft Typ Beschreibung Wert id Zeichenfolge ID des Ausgabeparameters wie im Webdienst. Für die ID muss die Groß-/Kleinschreibung beachtet werden. GetCityForecastByZIPResponse.GetCityForecastByZIPResult.
ForecastResult.Forecast.Desciption
jcr:title Zeichenfolge Name des Ausgabeparameters, wie er dem Benutzer angezeigt wird Beschreibung Hinweis:
Der wert der I D-Eigenschaft umfasst den Parameternamen als „Beschreibung“ und nicht „Beschreibung“. Das ist laut WSDL.
Wenn der Webdienst in CRX vorkonfiguriert ist, erstellen Sie eine Regel basierend auf den Webdienst im Regeleditor für ein adaptives Formular. Erstellen Sie bei Bedarf ein adaptives Formular, in dem Sie den vorkonfigurierten Webservice verwenden können.
Standardmäßig können Webdienste im Ordner „Apps und Libs“ eingerichtet werden. Der Administrator kann jedoch mindestens einen Speicherort im CRX einrichten, wo die Benutzer der adaptiven Formulare die Webdienste konfigurieren können. Das kann erforderlich sein, da die Benutzer möglicherweise keinen Zugriff auf den Ordner „Apps und Libs“ in CRX haben.
Um den Webdienstspeicherort in CRX zu konfigurieren, führen Sie folgende Schritte durch:
Für das Erstellen einer Regel, die auf der Vorkonfiguration „GetCityForecastByZIP“ basiert, benötigen Sie ein adaptives Formular mit folgenden Eigenschaften:
- Ein Feld, in dem der Benutzer die Postleitzahl eingeben kann
- Eine Tabelle, die das wöchentliche Wetter für die eingegebene Postleitzahl enthalten kann. In unserem Szenario sollten Sie die Zeile der Tabelle wiederholbar machen, indem Sie die Eigenschaft „maxOccur“ auf 7 festlegen. Die sieben Zeilen sind erforderlich sind, um die Wettervorhersage für jeden Wochentag anzuzeigen.
Das Formular zum Erstellen der auf den Wetter-Webdienst basierten Regel würde folgendermaßen aussehen:

Weitere Informationen zur Erstellung eines adaptiven Formulars finden Sie unter Erstellen eines adaptiven Formulars.
Nachdem Sie einen Webdienst in CRX eingerichtet und das richtige adaptive Formular für das Erstellen der Regel zur Verfügung haben, können Sie eine Regel schreiben, um den Webdienst aufzurufen und ein Formularobjekt auszufüllen.
Führen Sie die folgenden Schritte aus, um eine auf Webdienst basierte Regel für ein Feld (hier Postleitzahl) zu erstellen:
-
Tippen Sie auf die Dropdown-Liste Status auswählen und wählen Sie Bei Änderung.
Das Ereignis „Bei Änderung“ ruft die Regel auf, wenn der Wert des Felds (hier Postleitzahl) geändert wird. Um diese Regel auf andere Weise zu erstellen, können Sie andere Ereignisse und Operatoren im Regeleditor verwenden.
-
Im Feld Webdienst-URL eingeben tippen Sie auf
und wählen Sie den Namen des Webdiensts aus (hier „Weeklyweatherofacity“), den Sie in CRX eingerichtet haben. Die Platzhalter für Eingabe und Ausgabe werden angezeigt.
Um einen Webdienst aufzurufen, die nicht in CRX eingerichtet werden, können Sie die Webdienst-URL direkt in das Feld Webdienst-URL eingeben eingeben.
Hinweis:
In diesem Szenario ist beim Erstellen des Eingabeknotens in CRX der Standardwert des Parameters auf 90028 eingestellt. Um die Wettervorhersage für die Standardpostleitzahl (90028) anzuzeigen, überspringen Sie Schritt 5. Oder um den benutzerspezifischen Wert im Postleitzahlgebiet als Eingabe zu verwenden, fahren Sie mit Schritt 5 fort.
Hinweis:
Wenn die Platzhalter für Eingabe und Ausgabe bei der Auswahl des Webdiensts nicht angezeigt werden, überprüfen Sie die ID-Eigenschaft des dazugehörigen Ausgabeordners in CRX. Stellen Sie sicher, dass die ID korrekt und mit dem richtigen Fall eingegeben wird.
Im adaptiven Formular, in der Sie die webdienstbasierte Regel erstellt haben, führen Sie die folgenden Schritte aus, um die Formularobjekte mit dem Webdienst auszufüllen:
-
Geben Sie im Postleitzahlfeld die Postleitzahl der Stadt ein, für die Sie das Wetter abrufen möchten.
Wenn Sie den Cursor aus dem Postleitzahlfeld verschieben, wird die Tabelle ausgefüllt mit dem
tageweisen Wetter für die Woche. Wenn Sie beispielsweise die Postleitzahl für San Jose, CA (95111) eingeben und dann den Cursor mit Tab-Taste oder Maus aus dem Postleitzahlfeld verschieben, zeigt die Tabelle das wöchentliche Wetter wie folgt an: