Aufrufen eines SOAP-Web-Service aus einem Workflow
- Lernen Sie die Voraussetzungen für die Kommunikation mit dem SOAP-Web-Service für
die Anwendung:
- Die Werte für die Authentifizierung bei der Anwendung
- Die Werte für die Anforderung von Daten vom SOAP-Web-Service
- Das Format der Daten, die in der Antwort geliefert werden
Nähere Informationen finden Sie in der Dokumentation zur Anwendung, oder wenden Sie sich an das Unternehmen, das die Anwendung hostet.
- Zur Vorbereitung von RICOH ProcessDirector auf die Kommunikation mit der Anwendung gehen Sie wie folgt vor:
- Wenn die Anwendung ein Sicherheitszertifikat verlangt, installieren Sie das Zertifikat auf dem primären RICOH ProcessDirector-Computer.
- Wenn Ihre Umgebung einen Proxyserver für die Kommunikation mit Web-Services verlangt, richten Sie das Systems hierfür ein.
- Importieren Sie WSDL-Dateien für alle Web-Services, die Sie aufrufen möchten.
RICOH ProcessDirector erstellt SOAP-Anforderungsobjekte aus SOAP-Vorgängen in der WSDL-Datei. Geben Sie ein Präfix an, das RICOH ProcessDirector beim Erstellen der Objekte den Namen der SOAP-Vorgänge hinzufügt. Ein SOAP-Anforderungsobjekt ermöglicht es RICOH ProcessDirector, die SOAP-Version und andere Informationen zu ermitteln, die erforderlich sind, um einen richtigen Aufruf an den Web-Service zu senden.
Weitere Informationen finden Sie in den entsprechenden Aufgaben.
- Führen Sie einen manuellen Test zur Authentifizierung bei der Anwendung und Anforderung
einer Antwort vom SOAP-Web-Service durch. Überprüfen Sie, ob die Web-Service die gewünschte
Antwort zurückgibt.Viele Browser haben Plug-ins wie Boomerang für Google Chrome, die Web-Service-Aufrufe zu SOAP-Clients testen.
- Entscheiden Sie, wie Sie die Anforderung festlegen möchten:
- Sie können die Nutzdaten als Wert für das Merkmal Nutzlast anfordern eingeben.
- Sie können die Last in einer Textdatei speichern, auf die der Schritt CallSOAPService während der Verarbeitung von Jobs zugreifen kann.
- Klicken Sie auf die Registerkarte Workflow.
- Klicken Sie auf den Namen des Workflows, den Sie ändern möchten.
- Optional: Deaktivieren Sie den Workflow, indem Sie auf den Schalter links neben dem Workflow-Namen
klicken. Wenn Sie den Workflow während der Bearbeitung nicht deaktivieren, werden Jobs, die diesen Workflow verwenden, weiterhin durch die Schritte des Workflows geführt. Wenn Sie speichern, wird der Workflow vorübergehend deaktiviert und dann wieder aktiviert. Jobs, die in dem Workflow verarbeitet werden, könnten in eine fehlerhafte Situation geraten.
- Überprüfen Sie die in dem Workflow enthaltenen Schritte und die Standardwerte, die sie festlegen.
- Fügen Sie dem Workflow an der entsprechenden Stelle einen auf der Schrittschablone CallSOAPService basierenden Schritt hinzu.
- Legen Sie Werte für Merkmale des Jobs fest.
- Setzen Sie das Merkmal Anforderungs-URL auf die URL des Web-Service, den der Schritt aufruft.Die URL kann entweder das HTTP- oder das HTTPS-Protokoll nutzen.
- Setzen Sie das Merkmal Kennwort auf das Kennwort, das der Schritt für den SOAP-Web-Service zur Authentifizierung
bei der Anwendung liefert.Geben Sie das Kennwort als Wert dieses Merkmals ein. Um das Kennwort für den SOAP-Web-Service zu liefern, geben Sie das Merkmal Job.WebService.Password als Symbol im Merkmal Anforderungslast oder Anforderungs-URL an: ${Job.WebService.Password}. Informationen zur Festlegung, welches Merkmal verwendet werden soll, finden Sie in der Dokumentation des Web-Service.
- Legen Sie das Merkmal Anforderungsnutzdatentyp fest:
- Um den Text der Web-Service-Anforderung als Wert für das Merkmal Nutzlast anfordern festzulegen, wählen Sie TEXT.
- Um den Text der Web-Service-Anforderung in einer Textdatei festzulegen, auf die der Schritt CallSOAPService während der Verarbeitung von Jobs zugreifen kann, wählen Sie DATEI.
- Legen Sie das Merkmal Nutzlast anfordern fest:
- Wenn Sie das Merkmal Anforderungsnutzdatentyp auf TEXT setzen, geben Sie die Last als Wert für dieses Merkmal ein.
- Wenn Sie das Merkmal Anforderungsnutzdatentyp auf DATEI setzen, geben Sie den vollständigen Verzeichnispfad, den Namen und die Erweiterung
der Textdatei als Wert dieses Merkmals ein.
Geben Sie die Last in der Textdatei ein.
Um das Passwort in der Last zu senden, legen Sie das Merkmal Job.WebService.password als Symbol fest.
In diesem Beispiel wird die Auftrags-ID wird als Wert des Jobmerkmals Benutzerdefiniert 3 ( Job.Info.Attr3) gespeichert. Die Last enthält das Kennwort als Wert des Elements <Token> und Auftrags-ID als Wert des Elements <OrderID>:
<Token>${Job.WebService.Password}</Token><OrderID>${Job.Info.Attr3}</OrderID>
Der Schritt löst die Symbole auf, wenn er den SOAP-Web-Service aufruft.
- Wenn in Ihrer Umgebung ein Proxyserver mit Web-Services kommunizieren muss, legen Sie das Merkmal Proxy verwenden auf den richtigen Proxyserver fest.
- Legen Sie das Merkmal Antwortdatei auf den vollständigen Pfad und den Namen der Datei fest, die RICOH ProcessDirector verwendet, um die Antwort von der Anwendung zu speichern.Normalerweise lautet dieser Wert ${getFileName(print,XML,write)}.Nachdem die Antwort in der Datei gespeichert wurde, kann sie durch andere Schritte im Workflow verarbeitet werden.
- Setzen Sie das Merkmal SOAP-Anforderung auf die SOAP-Anforderung, die RICOH ProcessDirector erstellt hatte, als Sie die WSDL-Datei importiert haben.
Beispiel: Sie möchten die SAOP-Anforderung GetOrdersByDate verwenden. Sie haben den Namen der SOAP-Anforderungen PrintShop vorangestellt, als Sie diese importiert haben. Wählen Sie PrintShop-GetOrdersByDate.
- Setzen Sie das Merkmal Anforderungs-URL auf die URL des Web-Service, den der Schritt aufruft.
- Klicken Sie auf OK, wenn Sie fertig sind.
- Speichern und aktivieren Sie den Workflow.
Wenn Sie die Workflows abgeschlossen haben, testen Sie den Datenaustausch zwischen RICOH ProcessDirector und der Anwendung.
Beispiel
Die MarcomCentral Connect-Funktion umfasst die zwei mitgelieferte Workflows mit CallSOAPService-Schritten.