Erweiterungen für JAX-WS-Web-Service-Clients implementieren
WebSphere Application Server stellt Erweiterungen für Web-Service-Clients bereit, die das Programmiermodell JAX-WS (Java™ API for XML-based Web Services) verwenden.
Informationen zu diesem Vorgang
Sie können Web-Services mithilfe der folgenden Erweiterungen für das Programmiermodell JAX-WS anpassen.
Vorgehensweise
- Setzen Sie die Eigenschaften JAXWS_OUTBOUND_SOAP_HEADERS und JAXWS_INBOUND_SOAP_HEADERS
im Anforderungskontext des Dispatch- bzw. Proxy-Objekts, um einem JAX-WS-Web-Service-Client das Senden oder Abrufen
impliziter SOAP-Header zu ermöglichen. Ein impliziter SOAP-Header ist ein SOAP-Header, der nicht explizit in der WSDL-Datei definiert ist. Auf eine implizite SOAP-Headerdatei passt eine der folgenden Beschreibungen:
- Ein Nachrichtenabschnitt, der in der Bindung in der WSDL-Datei als SOAP-Header deklariert ist, dessen Nachrichtendefinition aber nicht von einem Element "portType" in einer WSDL-Datei referenziert wird.
- Ein Element, das nicht in der WSDL-Datei enthalten ist.
Handler- und Serviceendpunkte können implizite oder explizite SOAP-Header mit dem SAAJ-Datenmodell (SOAP with Attachments API for Java) bearbeiten.
Wie Sie Ihren Clientcode so ändern können, dass er Transportheader sendet oder empfängt, können Sie in den Informationen zum Senden und Empfangen impliziter SOAP-Header mit JAX-WS nachlesen.
- Setzen Sie die Eigenschaften REQUEST_TRANSPORT_PROPERTIES und RESPONSE_TRANSPORT_PROPERTIES , um
einem Web-Service-Client das Senden und Empfangen von Transportheadern zu ermöglichen.
Setzen Sie die Eigenschaften in der BindingProvider-Instanz.
Wenn Sie Ihren Clientcode ändern, um Transportheader zu senden oder zu empfangen, können Sie in den Transportheadern abgehender Anforderungen bzw. eingehender Antworten vom Server bestimmte Informatonen senden bzw. empfangen. Für Anforderungen oder Antworten, die den HTTP-Transport verwenden, werden die Informationen in einem HTTP-Header gesendet bzw. empfangen. Für Anforderungen oder Antworten, die den JMS-Transport (Java Message Service) verwenden, werden die Informationen in einer JMS-Nachrichteneigenschaft gesendet bzw. empfangen.
Wie Sie Ihren Clientcode so ändern können, dass er Transportheader sendet oder empfängt, können Sie in den Informationen zum Senden und Abrufen von Transportheadern mit JAX-WS nachlesen.
Wie Sie einen Web-Service-Client für das Senden oder Abrufen von Transportheadern aktivieren, können Sie in den Informationen zu den bewährten Verfahren für Transportheadereigenschaften nachlesen.
Unterartikel
Beispiel: JAX-WS-Eigenschaften zum Bearbeiten von SOAP-Headern verwenden
WebSphere Application Server stellt Erweiterungen für die Clientprogrammiermodelle Java API for XML-Based Web Services (JAX-WS) und Web Services for Java Platform, Enterprise Edition (Java EE) bereit, einschließlich der Eigenschaften "jaxws.binding.soap.headers.outbound" und "jaxws.binding.soap.headers.inbound". Dieses Beispiel zeigt, wie JAX-WS-Eigenschaften zum Bearbeiten von SOAP-Headern verwendet werden.Implizite SOAP-Header mit JAX-WS senden
Sie können einem vorhandenen JAX-WS-Web-Service-Client (Java API for XML-Based Web Services) ermöglichen, Werte in impliziten SOAP-Headern zu senden. Wenn Sie Ihren Clientcode ändern, um implizite SOAP-Header zu senden, können Sie in abgehenden Web-Service-Anforderungen bestimmte Informationen senden.Implizite SOAP-Header mit JAX-WS empfangen
Sie können einem vorhandenen JAX-WS-Web-Service-Client (Java API for XML-Based Web Services) ermöglichen, Werte aus impliziten SOAP-Headern zu empfangen. Wenn Sie Ihren Clientcode ändern, um implizite SOAP-Header abzurufen, können Sie bestimmte Informationen in einer eingehenden Web-Service-Antwort empfangen.Empfohlene Methoden für Eigenschaften des Transportheaders
Sie können die Eigenschaften REQUEST_TRANSPORT_PROPERTIES und RESPONSE_TRANSPORT_PROPERTIES in einem JAX-RPC-Client-Stub (Java API for XML-based RPC), einer Call-Instanz oder einer RequestContext-Instanz des JAX-WS-BindingProviders (Java API for XML-Based Web services) setzen, um einem Web-Service-Client das Senden oder Abrufen der Transportheader zu ermöglichen.Transportheader mit JAX-WS senden
Sie können einem vorhandenen JAX-WS-Web-Service-Client (Java API for XML-Based Web Services) ermöglichen, über Transportheader anwendungsdefinierte Informationen zusammen mit Ihren Web-Service-Anforderungen zu senden. Außerdem können Sie einen JAX-WS-Web-Service-Endpunkt für das Senden von anwendungsdefinierten Informationen zusammen mit der Web-Service-Antwortnachricht unter Verwendung von Transportheadern konfigurieren.Transportheader mit JAX-WS abrufen
Sie können einen JAX-WS-Web-Service-Client (Java API for XML-Based Web Services) so einstellen, dass er Werte aus Transportheadern abzurufen kann. Bei HTTP-Anforderungen werden die Transportheader aus den HTTP-Headern in der HTTP-Antwortnachricht abgerufen. Bei JMS-Anforderungen (Java Message Service) werden die Transportheader aus den JMS-Nachrichteneigenschaften in der JMS-Antwortnachricht abgerufen.


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_extendpmjaxws
Dateiname:twbs_extendpmjaxws.html