Module java.xml.ws
Package javax.xml.ws

## Interface Provider<T>

    public interface Provider<T>

Service endpoints may implement the `Provider` interface as a dynamic alternative to an SEI.

Implementations are required to support `Provider<Source>`, `Provider<SOAPMessage>` and `Provider<DataSource>`, depending on the binding in use and the service mode.

The `ServiceMode` annotation can be used to control whether the `Provider` instance will receive entire protocol messages or just message payloads.

Since:
  1.6, JAX-WS 2.0
See Also:
  `Source`, `SOAPMessage`, `ServiceMode`

### Method Summary

All Methods Instance Methods Abstract Methods
`T` `invoke(T request)` Invokes an operation occording to the contents of the request message.

### Method Detail

#### invoke

    T invoke(T request)

Invokes an operation occording to the contents of the request message.

Parameters:
  `request` - The request message or message payload.
Returns:
  The response message or message payload. May be `null` if there is no response.
Throws:
  `WebServiceException` - If there is an error processing request. The cause of the `WebServiceException` may be set to a subclass of `ProtocolException` to control the protocol level representation of the exception.
See Also:
  `MessageContext`, `ProtocolException`