call SOAP-WebService without template()

Prev Next

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.

Parameter

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.

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() 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>