Hinzufügen von Elementen im SOAP-Header-Anforderung für die Authentifizierung
Muss ich mit einem authentication header (d.h. als Teil der SOAP-header Anfrage) in meinem neuen web-service. Das authentication-header überprüfen Sie die Benutzerkennung und das Passwort ein. Ich habe, um zu überprüfen, den Inhalt von request-header-Angaben für die Authentifizierung in meinem Web-Service. Wenn er authentifiziert wurde, dann ist der SOAP-body der request verarbeitet werden, sonst wird die Authentifizierung Ungültig Nachricht senden zurück durch den Web-Service für die client-Anwendung aufrufen des Dienstes.
Ich bin nicht in der Lage zu verstehen, wie das erstellen eines web-service, wo der SOAP-Header enthält einige Elemente(in meinem Fall, Authentifizierung Elemente wie userId und Passwort).
Normalerweise, was auch immer Methode, die ausgesetzt in den Dienst kommt als Teil des SOAP-Body. Daher verwirrt wie gehen Sie mit dem hinzufügen von Authentifizierung Elemente in den SOAP-Header.
Bitte helfen
Grüße,
InformationsquelleAutor user182944 | 2012-09-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vor kurzem habe ich geschrieben eine Klasse, die fügt den Benutzer-Anmeldeinformationen, um
SOAP
header. Zu tun, müssen Sie eine Klasse erstellen, die implementiertSOAPHandler<SOAPMessageContext>
- Schnittstelle. Für z.B.:Beachten Sie, dass ich nur das hinzufügen von Anmeldeinformationen auf den header und die Rückkehr
true
. Sie tun, was immer Sie wollen, mit Nachrichten und zurückfalse
wenn etwas erwartet wird, ausfällt.Implementierte ich den client:
Aber es kann auch implementiert werden, die
endpoint
.Hier ist der link, den Sie Lesen sollten, über JAX-RPC handler mit IBM: ibm.com/developerworks/webservices/library/ws-tipjax2/...
Wenn Sie einen handler, und Sie können die Nachricht erhalten haben, in die Routine, das bedeutet, dass Sie irgendetwas tun können, um die Botschaft. Sie müssen nur herausfinden, wie man die Meldung ändern der RPC-Stil. Hier die Beispiele wie es gemacht wird über JAX-RPC: ibm.com/developerworks/xml/library/ws-tip-extend/index.html
Ich weiß nicht, etwas über RPC, weil ich es nicht verwendet haben. Ich schlage vor, Sie betrachten einen Blick auf Apache CXF: cxf.apache.org/docs/writing-a-service-with-spring.html. Es ist die neueste web-service-stack. Es basiert auf JAX-WS, sondern hat eine Menge anderer features, die manchmal sehr nützlich sind.
Wenn Sie wäre mit JAX-WS gibt es eine Menge Dokumentation auf, wie diese Arbeit zu machen. Die Lösung mit JAX-WS ist mit Anmerkungen versehen Sie Ihre java-parameter: @XmlElement(required=true). Aber ich weiß nicht, über JAX-RPC
InformationsquelleAutor Paulius Matulionis
Die wir bekommen können-header aus dem Umschlag nur nicht aus der soap-Nachricht.
InformationsquelleAutor Krishna Kumar Chourasiya