javax.xml.ws

## Annotation Type RespectBinding

    @Target(value=TYPE)
    @Retention(value=RUNTIME)
    @Documented
    @WebServiceFeatureAnnotation(id="javax.xml.ws.RespectBindingFeature",
                                 bean=RespectBindingFeature.class)
    public @interface RespectBinding

This feature clarifies the use of the `wsdl:binding` in a JAX-WS runtime.

This feature is only useful with web services that have an associated WSDL. Enabling this feature requires that a JAX-WS implementation inspect the `wsdl:binding` for an endpoint at runtime to make sure that all `wsdl:extensions` that have the `required` attribute set to `true` are understood and are being used.

The following describes the affects of this feature with respect to be enabled or disabled:

- ENABLED: In this Mode, a JAX-WS runtime MUST assure that all required `wsdl:binding` extensions are either understood and used by the runtime, or explicitly disabled by the web service application. A web service application can disable a particular extension that has a known WebServiceFeature using either the appropriate annotation associated with that WebServiceFeature on the server, or one of the following methods on the client:
  - `Service.getPort(QName,Class,WebServiceFeature...)`
  - `Service.getPort(Class,WebServiceFeature...)`
  - `Service.getPort(EndpointReference,Class,WebServiceFeature...)`
  - `Service.createDispatch(QName,Class,Service.Mode mode,WebServiceFeature...)`
  - `Service.createDispatch(EndpointReference,Class,Service.Mode,WebServiceFeature...)`
  - `Service.createDispatch(QName,JAXBContext,Service.Mode,WebServiceFeature...)`
  - `Service.createDispatch(EndpointReference,JAXBContext,Service.Mode,WebServiceFeature...)`
  - `EndpointReference.getPort(Class,WebServiceFeature...)`
  - One of the `getXXXPort(WebServiceFeatures...)` methods on a generated `Service`.
  The runtime MUST also make sure that binding of SEI parameters/return values respect the `wsdl:binding`. With this feature enabled, if a required (`wsdl:required="true"`) `wsdl:binding` extension is in the WSDL and it is not supported by a JAX-WS runtime and it has not been explicitly turned off by the web service developer, then that JAX-WS runtime MUST behave appropriately based on whether it is on the client or server:
  - Client: runtime MUST throw a `WebServiceException` no sooner than when one of the methods above is invoked but no later than the first invocation of an endpoint operation.
  - Server: throw a WebServiceException and the endpoint MUST fail to deploy
- DISABLED: In this Mode, an implementation may choose whether to inspect the `wsdl:binding`or not and to what degree the `wsdl:binding` will be inspected. For example, one implementation may choose to behave as if this feature is enabled, another implementation may only choose to verify the SEI's parameter/return type bindings.``

Since:
  JAX-WS 2.1
See Also:
  `RespectBindingFeature`

### Optional Element Summary

Optional Elements
`boolean` `enabled` Specifies if this feature is enabled or disabled.

### Element Detail

#### enabled

    public abstract boolean enabled

Specifies if this feature is enabled or disabled.

Default:
  true

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