Provider-based endpoint doesn't work when you specify the @wsdlLocation
attribute
---------------------------------------------------------------------------------
Key: AXIS2-4260
URL: https://issues.apache.org/jira/browse/AXIS2-4260
Project: Axis 2.0 (Axis2)
Issue Type: Bug
Components: jaxws
Reporter: Sharath Reddy
According to the JAX-WS spec:
'Provider-based endpoints SHOULD have a non-empty wsdlLocation pointing to a
valid WSDL description
of the endpoint.'
For Provider based endpoints, the JAX WS runtime does not validate the incoming
request - it is up to the user to do so. The WSDL serves more as an advisory to
the client, as to what kind of format to send to the service.
However, Axis does not like the @wsdlLocation attribute on the Provider-based
web service.
In order to facilitate dispatching a request to a Provider web service, Axis
adds a dummy operation to a Provider service :
/**
* The name of a special operation added to EndpointInterfaceDescriptions
for provider
* endpoints that do not specify WSDL, and therefore do not have specific
WSDL operations
* created. Note that this is currently only supported for HTTP bindings,
not for SOAP bindings.
*/
public static String JAXWS_NOWSDL_PROVIDER_OPERATION_NAME =
"jaxwsNoWSDLProviderOperation";
However, as stated in the comments, if you provide the @wsdlLocation attribute
to the Web Service, this operation does not get added to the Provider service.
Therefore incoming requests are not dispatched properly to the service (see
GenericProviderDispatcher).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.