Konsum ein .NET web service von einer Java-Soap-Client?

Ich bin auf der Suche nach einer einfachen Möglichkeit zum erstellen einer soap-Anfrage, um zu verbrauchen .NET-web-service, aber ich fand wenig bis gar keine Dokumentation zu diesem Thema. Die Standard-Bibliothek javax.xml.Seife ist mehr als mehrdeutig wie konstruieren die Anforderung.

Gibt es irgendwelche Bibliotheken zur Verfügung, die mir das Leben erleichtern?

Fand ich dieses Stück code irgendwo, und ich weiß nicht, wie es ist verwendet werden, oder welche Bibliothek es aus, aber ich würde sehr gerne etwas ähnliches, statt zu konstruieren, das gesamte xml-Nachricht manuell mithilfe von DOM, oder etwas ähnliches (weil es die Einfach aus SEIFE)

SoapRequestBuilder s = new SoapRequestBuilder();
s.Server = "127.0.0.1"; //server ip address or name

s.MethodName = "ConcatWithSpace";
s.XmlNamespace = "http://tempuri.org/";
s.WebServicePath = "/SimpleService/Service1.asmx";
s.SoapAction = s.XmlNamespace+s.MethodName;
s.AddParameter("one", "David");
s.AddParameter("two", "Hobbs");
String response = s.sendRequest();

Dies ist die Botschaft, die form, die ich haben, um zu senden:

POST /webservice/TimrService.asmx HTTP/1.1
Host: not.important.host
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://tempuri.org/GetTimetableForBachelorYear"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetTimetableForBachelorYear xmlns="http://tempuri.org/">
      <year>I1</year>
      <halfYear>A</halfYear>
    </GetTimetableForBachelorYear>
  </soap:Body>
</soap:Envelope>
Schreibe einen Kommentar