folgendes Problem:
Ich muss an eine SOAP Schnittstelle Daten senden, bekomme aber als Antwort immer nur
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope">
<faultcode>S:Server</faultcode>
<faultstring>The configured protocol is not SOAP, which has been requested.</faultstring>
</S:Fault>
</S:Body>
</S:Envelope>
Leider kenne ich mich nicht mit SOAP aus und wenn ich die Fehlermeldung google, bekomme ich gar keine passende Antwort. Ich weiß noch nicht einmal an welcher Stelle ich den Fehler suchen muss, liegt es an meinem Code, oder an der übermittelten Datei?
Mein Code:
XmlDocument Doc = new XmlDocument();
Doc.InnerXml = result.ToString();
HttpWebRequest Req = (HttpWebRequest)WebRequest.Create(PriceURL);
Req.Headers.Add("SOAPAction", "");
Req.ContentType = "text/xml;charset=\"utf-8\"";
Req.Accept = "text/xml";
Req.Method = "POST";
Req.Timeout = 10000;
Req.ClientCertificates.Add(Certi);
using (var streamWriter = new StreamWriter(Req.GetRequestStream()))
{
streamWriter.Write(Doc);
}
//Überprüfen ob API Daten korrekt erhalten hat
using (var response = (HttpWebResponse)Req.GetResponse())
{
using (var streamReader = new StreamReader(response.GetResponseStream()))
{
var json = streamReader.ReadToEnd();
}
}
das Feld "result" vom Typ StringBuilder
Bevor es jetzt wieder böse Kommentare kommen:
Ich hab das Projekt aufs Auge gedrückt bekommen, das wurde vor 13 Jahren mal geschrieben und seit dem war da keiner mehr dran, nun soll ich als Service und WPF portieren. Bis jetzt hatte ich auch noch nie irgendwelche Berührungspunkte mit SOAP und werde es danach auch nicht mehr haben.
Ich kann "The configured protocol is not SOAP, which has been requested." übersetzen, weiß aber weder wo dieses Protokoll konfiguriert wird/wurde, noch von welcher Seite es verlangt wird/wurde.
Schonmal vielen Dank im Vorraus!
Kriz