Aufruf:
SOGERPConsole.exe [-anz Anzahl] -soaprequest Eingabedate Ergebnisdatei Url
Mit dieser Funktion lassen sich SoapRequests an einen Soap-Service senden. Da diese nicht komplett eindeutig definiert sind, hier ein Beispiel um einen Request an die Soap-Implementierung des SOGERPSrv zu senden.
Der Aufruf erwartet 3 Positionsparameter.
Den Pfad zur Xml die den Request beinhaltet
Den Pfad zum Speicherort der Antwort oder "-" um keine Ausgabe zu erzeugen.
Die Url zum Request.
Beispiel:
SOGERPConsole.exe -soaprequest "Sources\UnitTestData\SoapRequests\Shop.Kundenanmeldung.soap.xml" "C:\result.xml" "http://localhost:6302/shop/Kundenanmeldung.soap"
Die Eingabedatei muss in einen Soapenvelope verpackt sein und kann z.B. so aussehen:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Header />
<soap:Body>
<Request xmlns="http://localhost:6302/shop/Kundenanmeldung.wsdl">
<Kundenanmeldung>
<Kundennummer>55206</Kundennummer>
<Sprache>ger</Sprache>
</Kundenanmeldung>
</Request>
</soap:Body>
</soap:Envelope>
Die Antwort des Service wird in die Ergebnisdatei ausgegeben. Wird als Ergebnisdatei "-" angegeben, erfolgt keine Ausgabe.
Über den Parameter "-anz Anzahl" kann festgelegt werden, wieviele Requests nacheinander durchgeführt werden.
Darüber hinaus können auch Fehlermeldungen entstehen, wenn z.B. der Service nicht antwortet. Sollte diese Meldung einen HTTP-Statuscode enthalten, können sie dessen Bedeutung hier nachlesen.
Optional kann durch Angabe von Raute(#) in der URL eine Soap-Action auch übergeben werden, sofern der Service diese verarbeiten kann (z.B.: http://someservice.com/soap/GetSkuData#active").
Um Requests an den "Legacy-Handler" zu senden, verwenden Sie eine URL im Format "legacy://localhost:4402" .
Beispiel:
SOGERPConsole.exe -soaprequest Sources\UnitTestData\SoapRequests\Shop.Kundenanmeldung.legazy.xml c:\temp\Shop.Kundenanmeldung.result.txt legacy://localhost:4402
Interaktives ausprobieren von SOAP-Requests
Um SOAP-Requests interaktiv auszuprobieren, steht zusätzlich das Programm "hhiptst" zur Verfügung. Hier kann auf dem TAB-Reiter "SOAP" ein vorbereiteter SOAP-Request geladen und an einen SOAP-Handler übergeben werden.