javax.xml.ws

## Interface WebServiceContext

    public interface WebServiceContext

A `WebServiceContext` makes it possible for a web service endpoint implementation class to access message context and security information relative to a request being served. Typically a `WebServiceContext` is injected into an endpoint implementation class using the `Resource` annotation.

Since:
  JAX-WS 2.0
See Also:
  `Resource`

### Method Summary

Methods
`<T extends EndpointReference> T` `getEndpointReference(Class<T> clazz, Element... referenceParameters)` Returns the `EndpointReference` associated with this endpoint.
`EndpointReference` `getEndpointReference(Element... referenceParameters)` Returns the `EndpointReference` for this endpoint.
`MessageContext` `getMessageContext()` Returns the `MessageContext` for the request being served at the time this method is called.
`Principal` `getUserPrincipal()` Returns the Principal that identifies the sender of the request currently being serviced.
`boolean` `isUserInRole(String role)` Returns a boolean indicating whether the authenticated user is included in the specified logical role.

### Method Detail

#### getMessageContext

    MessageContext getMessageContext()

Returns the `MessageContext` for the request being served at the time this method is called. Only properties with APPLICATION scope will be visible to the application.

Returns:
  MessageContext The message context.
Throws:
  `IllegalStateException` - This exception is thrown if the method is called while no request is being serviced.
See Also:
  `MessageContext`, `MessageContext.Scope`, `IllegalStateException`

#### getUserPrincipal

    Principal getUserPrincipal()

Returns the Principal that identifies the sender of the request currently being serviced. If the sender has not been authenticated, the method returns `null`.

Returns:
  Principal The principal object.
Throws:
  `IllegalStateException` - This exception is thrown if the method is called while no request is being serviced.
See Also:
  `Principal`, `IllegalStateException`

#### isUserInRole

    boolean isUserInRole(String role)

Returns a boolean indicating whether the authenticated user is included in the specified logical role. If the user has not been authenticated, the method returns false.

Parameters:
  `role` - A `String` specifying the name of the role
Returns:
  a `boolean` indicating whether the sender of the request belongs to a given role
Throws:
  `IllegalStateException` - This exception is thrown if the method is called while no request is being serviced.

#### getEndpointReference

    EndpointReference getEndpointReference(Element... referenceParameters)

Returns the `EndpointReference` for this endpoint.

If the `Binding` for this `bindingProvider` is either SOAP1.1/HTTP or SOAP1.2/HTTP, then a `W3CEndpointReference` MUST be returned.

Parameters:
  `referenceParameters` - Reference parameters to be associated with the returned `EndpointReference` instance.
Returns:
  EndpointReference of the endpoint associated with this `WebServiceContext`. If the returned `EndpointReference` is of type `W3CEndpointReference` then it MUST contain the the specified `referenceParameters`.
Throws:
  `IllegalStateException` - This exception is thrown if the method is called while no request is being serviced.
Since:
  JAX-WS 2.1
See Also:
  `W3CEndpointReference`

#### getEndpointReference

    <T extends EndpointReference> T getEndpointReference(Class<T> clazz,
                                                       Element... referenceParameters)

Returns the `EndpointReference` associated with this endpoint.

Parameters:
  `clazz` - The type of `EndpointReference` that MUST be returned.
  `referenceParameters` - Reference parameters to be associated with the returned `EndpointReference` instance.
Returns:
  EndpointReference of type `clazz` of the endpoint associated with this `WebServiceContext` instance. If the returned `EndpointReference` is of type `W3CEndpointReference` then it MUST contain the the specified `referenceParameters`.
Throws:
  `IllegalStateException` - This exception is thrown if the method is called while no request is being serviced.
  `WebServiceException` - If the `clazz` type of `EndpointReference` is not supported.
Since:
  JAX-WS 2.1

Copyright © 1993, 2017, Oracle and/or its affiliates. All rights reserved.