Webservice-Aktion
Mit einer Webservice-Aktion kann ein Webservice-Aufruf ausgeführt werden. Dazu wird ein registrierter Webservice im Modul "Integration" benötigt. Wie Sie dort einen Webservice konfigurieren können, erfahren Sie hier.
Die Webservice-Aktion finden Sie in Prozessen im Bereich "Elemente". Von dort kann sie per Drag & Drop an die gewünschte Stelle in der Prozesskette eingefügt und konfiguriert werden. Allgemeine Informationen zum Erstellen von Prozesselementen finden Sie hier.
Wenn Sie die Webservice-Aktion auf der Arbeitsfläche erstellt haben, öffnen Sie den Eigenschaftendialog mit einem Doppelklick auf das Element.
Allgemein
Alle Informationen zu den Einstellungen in diesem Dialog finden Sie hier.
Webservices
Hier werden der Name des Webservice-Aufrufs und der Pfad in der WSDL-Struktur angezeigt.
Webservice konfigurieren
Öffnet einen Dialog, in dem ein Webservice registriert werden kann.
Webservice-Aufruf hinzufügen
Öffnet einen Dialog, in dem eine Webservice-Aufruf ausgewählt werden kann.
Webservice-Aufruf auswählen
Werden Webservice-Angebote aus anderen Intrexx-Portalen aufgerufen, so ist eine Anmeldung erforderlich, wenn das angesprochene Portal mit
-
der Intrexx-Authentifizierung konfiguriert ist. Dazu wird die intrexxLogin-Operation verwendet.
-
der integrierten Windows-Authentifizierung konfiguriert ist. Hier muss die Login-Operation verwendet werden.
Erst danach kann die eigentliche Webservice-Operation aufgerufen werden. Zum Abschluss muss die logout-Operation verwendet werden, damit die Session korrekt beendet wird.
Wählen Sie den gewünschten Aufruf aus und klicken Sie "OK".
Webservice-Aufruf löschen
Löscht den aktuell markierten Aufruf.
Bearbeiten
Öffnet den Dialog für die Auswahl des Webservice-Aufrufs, in dem der Aufbau des Webservices abgebildet ist. Außerdem finden Sie dann auch den zusätzlichen Reiter "Konfiguration".
Priorität erhöhen / verringern
Hier kann die Priorität geändert werden, wenn mehrere Aufrufe eingetragen sind. Mehrere Webservices werden zeitlich aufeinander folgend ausgeführt. Der oberste Aufruf wird zuerst gestartet, danach folgen der Reihe nach alle darunter liegenden Aufrufe.
Reiter "Input" - Parametertyp
Hier wird die Struktur der Operation des aufgerufenen Webservice abgebildet. Markieren Sie die Methode, mit der ein Wert aus der Applikation geliefert werden soll. Mit dem Kontextmenü "Bearbeiten" kann dann die Quelle des Werts definiert werden. Welchen Datentyp der Webservice dabei erwartet, ist in Klammern bei der Methode angegeben. Weitere Informationen zu den einzelnen Parametertypen finden Sie hier. Wählen Sie die gewünschte Methode aus und klicken Sie "Weiter".
Reiter "Output"
Sessionvariable erstellen
Über das Kontextmenü kann hier eine neue Sessionvariable erstellt werden, die dann als Ziel dem Wert, der vom Webservice geliefert wird, mit Klick auf die Pfeilschaltflächen zugeordnet werden kann.
Variable im Verarbeitungskontext erstellen
Über das Kontextmenü kann hier eine neue Variable im Verarbeitungskontext erstellt werden, die dann als Ziel dem Wert, der vom Webservice geliefert wird, mit Klick auf die Pfeilschaltflächen zugeordnet werden kann.
Benutzerdefinierte Variable erstellen
Über das Kontextmenü kann hier eine neue benutzerdefinierte Variable erstellt werden, die dann als Ziel dem Wert, der vom Webservice geliefert wird, mit Klick auf die Pfeilschaltflächen zugeordnet werden kann. Informationen zu Namespace und Local Part finden Sie hier.
Parametertypen
Hier finden Sie eine Übersicht über die Parametertypen, die als Input ausgewählt werden können.
Wert aus Datenfeld
Der Parametertyp "Wert aus Datenfeld" ist nur wählbar, wenn eine Datengruppe zur Verfügung steht - z.B. wenn die Prozesskette mit einem Datengruppen-Ereignisbehandler startet. Wählen Sie nach einem Klick auf "Weiter" das gewünschte Datenfeld aus.
Systemwert
System
Je nach Input-Parametertyp kann der aktuelle Wert der Systemfelder Datensatz ID, Eltern Datensatz ID oder der Datumswert (Heute (mit Uhrzeit)) übergeben werden.
Benutzer
Hier können Werte aus dem Modul "Benutzer" (z.B. Vorname, Nachname, Personalnummer etc.) ausgewählt werden. Deren aktueller Wert wird dann als Input verwendet.
Statischer Wert
Hier kann ein fester Wert als Inputparameter definiert werden. Verwenden Sie für Datumswerte bitte das Format yyyy-MM-ddTHH:mm:ssZ (z.B. 2017-09-12T14:45:00Z). Verwenden Sie bei Boolean-Werten bitte "true" oder "false". Der hier eingetragene Wert kann nicht über den Browser geändert werden.
Sessionvariable
Standardwerte
Als Standardwerte stehen alle Werte, die grundsätzlich in Intrexx beim Besuch einer Seite in einer Sessionvariablen abgelegt werden, hier zur Auswahl:
-
Session-ID
-
Erstellzeit der Session
-
Spracheinstellung
-
Timeout
-
Anonym bei einer Session ohne Anmeldung
Weitere Variablen
Der Parametertyp "Sessionvariable" kann eingesetzt werden, wenn mehrere Webservices abgefragt werden. Dabei werden die Rückgabewerte eines bereits abgefragten Webservices in eine benutzerdefinierte Sessionvariable geschrieben und später als Input in einem der folgenden Webservices verwendet. Eine benutzerdefinierte Sessionvariable kann auf dem Reiter "Output" definiert werden. Mit dem Kontextmenü "Sessionvariable hinzufügen" wird dort die neue Sessionvariable deklariert.
Verarbeitungskontext
Hier kann der sharedState-Variablenname eingetragen werden. Der Name sollte immer mit einem Kleinbuchstaben beginnen. Setzt er sich aus mehreren Wörten zusammen, so werden die Anfangsbuchstaben der weiteren Wörter groß geschrieben.
Benutzerdefinierte Variable
Tragen Sie hier Namespace und Local part ein.
Ein XML-Qualified-Name (QName) setzt sich aus zwei Teilen zusammen:
-
Namensraum-URI
-
lokaler Teil
Beispiel
Namensraum: https://schemas.domain.de/variableNames/
lokaler Teil: meinWert
oder
Namensraum: urn:variableNames
lokaler Teil: meinWert
Zwei qualifizierte Namen sind gleich, wenn sowohl ihr Namensraum als auch ihr lokaler Name übereinstimmen. Dabei wird zwischen Groß- und Kleinschreibung unterschieden.
Rückgabewert von Webservice
Der Dialog entspricht vom Aufbau her dem Reiter "Webservices" in den Eigenschaften der Webservice-Aktion.
Reiter "Output"
Hier werden alle Rückgabewerte des Webservices angezeigt, der im oberen Bereich des Dialogs ausgewählt ist. Es können also auch Rückgabewerte von vorausgegangenen Aufrufen als Input eingesetzt werden.
Input- und Outputparametertypen müssen übereinstimmen. Auch die Priorität der Aufrufe, die die Abfolge der Anfragen steuert, muss beim Parametertyp "Rückgabewert von Webservice" beachtet werden.
Nichts
Mit diesem Parametertyp wird nichts zugewiesen. Die Möglichkeit, eine Zuweisung von "Nichts" explizit zu machen, kann in bestimmten Fällen nützlich sein, um Mehrdeutigkeiten der Zuweisung zur Laufzeit aufzulösen, die sonst zu Fehlern führen würden.
Konfiguration
Die Konfiguration finden Sie, wenn Sie auf dem Reiter "Webservices" in den Eigenschaften der Webservice-Aktion einen Webservice bearbeiten.
Factory-Klasse
Hier können Klassen angegeben werden, die zur Laufzeit verwendet werden, um Objekte zu erzeugen, die unter anderem Webservice-Aufrufe durchführen. Dieser Mechanismus wird z.B. verwendet, um mit der Klasse "de.uplanet.lucy.server.bpee.IntrexxLoginWebServiceCallBpeeExecutableFactory" das Intrexx-Login durchzuführen. Die Klasse führt für die Intrexx-Login-Operation zwei Aufrufe hintereinander aus, ohne dass dies nach außen für den Benutzer ersichtlich ist.
Properties
Hier können Factories parametrisiert werden, z.B. mit Timeoutwerten für den Verbindungsaufbau und die Serverantwort.
Parameter hinzufügen fügt eine neue Zeile ein, Parameter löschen löscht den aktuell markierten Parameter.
Spalte "Name"
Zeigt den Namen des Parameters an. Wenn Sie hier in eine Zelle klicken, kann ein Intrexx-Parameter ausgewählt oder ein eigener Parameter direkt eingetragen werden.
Spalte "Wert"
Hier kann der Parameter-Wert bearbeitet werden.
Definierbare Parameter
Beim Aufruf eines Webservice können die hier genannten Parameter gesetzt werden.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.socketTimeout
Definition des Timeouts, wie lange nach einer erfolgreichen Verbindung auf eine Antwort gewartet wird. Die gewünschte Zeit ist in Millisekunden anzugeben.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.connectionTimeout
Definition des Timeouts, bis der Webservice die Verbindung akzeptiert. Die gewünschte Zeit ist in Millisekunden anzugeben.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.preemptiveAuthentication
Im Falle von HTTP-Basic-Authentifizierung werden die Anmeldedaten im Voraus versendet, bevor der Server eine eventuelle Unauthorized-Response versendet. Der Wert ist standardmäßig false.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.username
Statischer Benutzername, der zur HTTP-Basic-Authentifizierung verwendet werden soll.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.password
Statisches Passwort, das zur HTTP-Basic-Authentifizierung verwendet werden soll.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.host
Name des Hosts, bei dem die Authentifizierung erfolgen soll.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.port
Port des Zielhosts, über den die Authentifizierung erfolgen soll.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.transport.http.protocolVersion
Die HTTP-Protokoll-Version.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.transport.http.chunked
Angabe, ob chunked transfer encoding verwendet werden soll (true/false).
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.allowedRetry
Auf true setzen, wenn das Authentifizierungsschema Wiederholversuche erlauben soll. Der Wert ist standardmäßig false.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.realm
Gültigkeitsbereich des aktuellen Authentifizierungsschemas.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.domain
Für die Authentifizierung notwendige Domäne.
de.uplanet.lucy.server.bpee.WebServiceCallBpeeExecutable.authenticator.authSchemes
Liste für Authentifizierungsschemata, z.B. Digest Basic.
Skript
Den Reiter "Skript" finden Sie, wenn Sie auf dem Reiter "Webservices" in den Eigenschaften der Webservice-Aktion einen Webservice bearbeiten.
Hier haben Sie die Möglichkeit, Groovy-Skript zu verfassen, das beim Webservice-Aufruf ausgeführt wird. Dazu muss das Portalrecht "Velocity- und Groovy-Skripte veröffentlichen" erteilt sein.
Ein Klick auf "Groovy-Skript verfassen" öffnet den Groovy-Skripteditor.
Weitere Informationen
Webservice im Modul "Integration" registrieren oder anbieten
Prozesse erstellen und verwalten
Die Bereiche des Moduls "Prozesse"