Ich muss einen Webdienst von Drittanbietern verwenden, der in .NET 2.0 implementiert ist (natürlich auf IIS).HOWTO überschreiben Axis2 Request-Header für .NET-Web-Service?
Ich muss einen Java-Client machen. Ich verwende wsdl2java, um den SOAP-Stub zu generieren.
Da das ursprüngliche Apache Axis-Projekt nun nicht mehr gewartet wird und ich einige Probleme beim Parsen einiger Antworten vom Dienst hatte, konvertierte ich den Client, um die neueste (1.5) Version von Axis2 zu verwenden. Jetzt erkennt der .NET-Dienst meine Anfragen nicht einmal.
ich es geschafft, die „Chunking“ ausgeschaltet zu erhalten (wobei „Stub“ ist eine Variable vom Typ MumbleStub von wsdl2java erzeugt, und ich zeigen, was mehrere Zeilen Code als eine schreckliche Linie hier sind):
stub._getServiceClient().getOptions().setProperty(HTTPConstants.CHUNKED, Boolean.FALSE);
.. so zumindest der Dienst erkennt meine Anfrage AS eine Anfrage, wenn auch eine schlechte: "HTTP/1.1 400 Bad Request
" ist die Antwort jetzt (im Gegensatz zu einer "Intro/Zusammenfassung" Seite bietet mir einen Link zu der WSDL) .
Ich bemerkte, dass die Axis ("1") Anfrage einen anderen Content-Type Header (text/xml, vs application/soap-xml) hatte, und ich frage mich, wie man diesen Request-Header ändert, wenn das der Fall ist Tatsache das Problem.
Hat jemand anderes dieses Problem alternativ? Ist das Problem wirklich das (undisplayable, wie es aussieht wie "element injection" zur Blog-Engine) ... xml version- "1.0" ... "XML-Meta-Intro-Tag", das Axis2 am Anfang der Anfrage hinzugefügt hat?
WS-Todesstern, tatsächlich.
könnten Sie solche Dinge postulieren, um Pastebin oder dergleichen zu sagen. oder markieren Sie sie als "code", was Ihnen erlaubt, alles zu posten – jitter
btw. Ich spreche von dem „nichtanzeigbaren“ Teil – jitter