Web Services mit SOAP nutzen

Einen Client mit VBScript erstellen

Um einen Client über die SOAP-API (Application Programming Interface) zu erzeugen, sind drei Schritte notwendig:

Die Erstellung des SOAP-Client-Objekts.

  • Die Initialisierung SOAP-Client-Objekts mit der WSDL-Datei des Web Service.

  • Der Aufruf einer der vom Web Service zur Verfügung gestellten Methoden.

Die Erstellung des Objekts realisieren Sie mittels der Methode CreateObject():

Dim SOAPClient
Set SOAPClient = createObject("MSSOAP.SOAPClient")

Für die Initialisierung nutzen Sie die Methode MSSoapInit() des erzeugten SOAP-Client-Objekts:

SOAPClient.msSoapInit("<WSDL-Datei>")

Zuletzt rufen Sie eine Methode des Web Service auf:

wscript.echo SOAPClient.getPreis("<Paramater>")

Wir verwenden unseren einfachen Web Service zur Ermittlung eines Reisepreises für eine bestimmte Reisenummer. Listing 1 enthält den vollständigen Programmcode in VBScript unter Berücksichtigung einer einfachen Fehlerprüfung. Diese Thematik wird Gegenstand eines eigenen Artikels in einer der kommenden Ausgaben von Expert´s inside Lotus Notes/Domino sein.

Dim SOAPClient
Set SOAPClient = createobject("MSSOAP.SOAPClient")
On Error Resume Next
SOAPClient.mssoapinit("http://localhost/webservice2.nsf/webservicedemo1?wsdl")
If err Then
wscript.echo SOAPClient.faultString
WSCRIPT:ECHO SOAPClient.detail
End If
wscript.echo SOAPClient.getPreis("D-12")
If err Then
wscript.echo SOAPClient.faultString
WSCRIPT:ECHO SOAPClient.detail
End If

Im Beispiel wird der Rückgabewert des Web Service auf der Konsole ausgegeben. Das Ergebnis zeigt Bild 1. Voraussetzung für einen lokalen Test ist das Vorhandensein eines Systemdienstes, der eine über das Web gestellte Anfrage beantworten kann. Andernfalls erfolgt eine Fehlermeldung des WSDLReaders:

Bild 1: Der Rückgabewert des Web Service.
Bild 1: Der Rückgabewert des Web Service.

WSDLReader: XML Parser failed at linenumber 0,
lineposition 0, reason is: resource
not found

Als Notes-Anwender bietet sich natürlich die Verwendung des lokalen HTTP-Tasks an. Um ihn zu aktivieren, starten Sie einmalig die Web-Vorschau einer Datenbank im Notes-Client über den Menüpunkt Aktionen/Vorschau im Web- Browser/Vorgabe-Browser. Wollen Sie kontrollieren, ob der lokale HTTP-Task läuft, öffnen Sie den Windows-Taskmanager. Ist der Task gestartet, finden Sie im Register Prozesse den Prozess nhttp.exe.