call SOAP-WebService without template(a,b,c,d,e,f,[g,h,i,j,k,l])


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, 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 HTTP-Header enthält. Wobei der Key eines Eintrags in der Map der Name eines HTTP-Headers ist, und der Wert zu diesem Key der Wert des HTTP-Headers. Siehe auch Abschnitt HTTP-Header.


Beispiel


Wir verwenden im Beispiel einen lokalen Webservice. Beschrieben finden Sie das in Abschnitt Mit einem Profil von einem Webservice Daten empfangen und verarbeiten.

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">
<!-- SOAPAction:http://127.0.0.1/dw/Request/addWebService -->
<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: http://localhost/dw/Request/addWebService
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>