Implementing extensions to JAX-WS web services clients

WebSphere® Application Server provides extensions to web services clients using the Java™ API for XML-based Web Services (JAX-WS) programming model.

About this task

You can customize web services by using the following extensions to the JAX-WS client programming model.

Procedure

  • Set the JAXWS_OUTBOUND_SOAP_HEADERS and JAXWS_INBOUND_SOAP_HEADERS properties on the request context of the Dispatch or Proxy object to enable a JAX-WS web services client to send or retrieve implicit SOAP headers.
    An implicit SOAP header is a SOAP header that is not explicitly defined in the WSDL file. An implicit SOAP header file fits one of the following descriptions:
    • A message part that is declared as a SOAP header in the binding in the WSDL file, but the message definition is not referenced by a portType within a WSDL file.
    • An element that is not contained in the WSDL file.

    Handlers and service endpoints can manipulate implicit or explicit SOAP headers using the SOAP with Attachments API for Java (SAAJ) data model.

    To learn how to modify your client code to send or retrieve transport headers, see the information on sending implicit SOAP headers with JAX-WS or receiving implicit SOAP headers with JAX-WS.

  • Set the REQUEST_TRANSPORT_PROPERTIES and RESPONSE_TRANSPORT_PROPERTIES properties to enable a web services client to send or retrieve transport headers.

    Set the properties on the BindingProvider instance.

    By modifying your client code to send or retrieve transport headers, you can send or receive specific information within the transport headers of outgoing requests or incoming responses from the server. For requests or responses that use the HTTP transport, the information is sent or retrieved in an HTTP header. Similarly, for a request or response that uses the Java Message Service (JMS) transport, the information is sent or retrieved in a JMS message property.

    To learn how to modify your client code to send or retrieve transport headers, see the information on sending transport headers with JAX-WS or retrieving transport headers with JAX-WS.

    To learn how to enable a web services client to send or retrieve transport headers, see the transport header properties best practices information.