call SOAP-WebService without template(a,b,c,d,e,f,[g,h,i,j,k,l])
|
Gruppe |
Ruft einen Webservice a unter Verwendung von SOAP 1.2 auf.
Parameter d erwartet den SOAP-Request als String. Siehe Beispiel.
Die SOAP-Response des Webservices wird in das XML-DOM-Objekt f geschrieben.
Die Funktion liefert true beim erfolgreichen Aufruf des Webservices zurück.
Parameterbeschreibung
|
Parameter |
Beschreibung |
|
a |
Endpoint-URL des Webservices. Siehe Beispiel. |
|
b |
(optional) Benutzername, sofern notwendig. |
|
c |
(optional) Passwort, sofern notwendig. |
|
d |
SOAP-Request als XML-String. Siehe Beispiel. |
|
e |
MIME-Type des ausgehenden Requests, z. B. text/xml. |
|
f |
Name des XML-DOM-Objekts, in das die SOAP-Response geschrieben wird. |
|
g |
(optional) Bei true wird beim Scheitern des Webservice-Aufrufs die Funktion mit einem Fehler abgebrochen. Bei false wird die Funktion mit dem Rückgabewert false beendet und die Fehlermeldung des gescheiterten Webservice-Aufrufs wird in System-Variable VAR_SYS_SOAP_FAULT gespeichert, falls diese angelegt ist. |
|
h |
(optional) Timeout in Sekunden. |
|
i |
(optional) true, falls der Webservice über einen DMZ-Server aufgerufen werden soll. Default: false. |
|
j |
(optional) ID des Zertifikats, falls dieses für eine SSL-Verbindung benötigt wird. Default: <leer>. |
|
k |
(optional) HTTP-Kanal-ID. In diesem Fall können Parameter b, c und j leer gelassen werden, da sie vom Kanal kommen. |
|
l |
(optional) Der Name der Map, die zusätzliche HTTP-Request-Header enthält. Wobei der Key eines Eintrags in der Map der Name eines HTTP-Request-Headers ist, und der Wert zu diesem Key der Wert des HTTP-Request-Headers. Hinweis: Siehe auch Funktion add to map(key a, value b, name of map c, [skip empty d]). |
Zusätzliche HTTP-Request-Header
Siehe Parameter l.
Beispiel
Wir verwenden im Beispiel einen lokalen Webservice. Beschrieben finden Sie das in Abschnitt Mit Profil SOAP-Webservice aufrufen im Eingangsagenten.
Dort ist auch beschrieben, wie Sie den SOAP-Request für Parameter d bekommen.
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:wsdw="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> </soapenv:Header> <soapenv:Body> <wsdw:Add> <wsdw:intA>1</wsdw:intA> <wsdw:intB>2</wsdw:intB> </wsdw:Add> </soapenv:Body></soapenv:Envelope>Wir rufen die Funktion mit folgenden Parametern auf.
1) call SOAP-WebService without template(a,b,c,d,e,f,[g,h,i,j,k,l]) a constant: https://localhost:443/dw/Request/addition_web_service b constant: c constant: d destination: (XML als String wie oben abgebildet) e constant: text/xml f constant: my_xml_object g constant: h constant: i constant: j constant: k constant: l constant: Die Funktion liefert true zurück, wenn alle Einstellungen korrekt sind.
Sie können nun z. B. die Funktionen dump XML/DOM object(a) verwenden, um die Webservice-Response aus dem XML-DOM-Objekt my_xml_object auszulesen.
<?xml version="1.0" encoding="UTF-8"?><AddResult> <result>3</result></AddResult>