[
https://issues.apache.org/jira/browse/CXF-4115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Zsolt Beothy-Elo updated CXF-4115:
----------------------------------
Attachment: request.txt
jaxws_dispatch_provider.zip
> The operation property of the MessageContext may return wrong value if
> erroneous request is sent
> ------------------------------------------------------------------------------------------------
>
> Key: CXF-4115
> URL: https://issues.apache.org/jira/browse/CXF-4115
> Project: CXF
> Issue Type: Bug
> Components: JAX-WS Runtime
> Affects Versions: 2.5.2
> Reporter: Zsolt Beothy-Elo
> Attachments: jaxws_dispatch_provider.zip, request.txt
>
>
> Send a random request to a Provider based service. Retrieving the operation
> property from the MessageContext within the invoke method always returns an
> operation defined in the attached wsdl even if the the rquest is completely
> unrelated, e.g. unknown SOAPAction, payload not matching any schema in the
> WSDL.
> Expected behavior is to get back some undefined value, e.g. null, to indicate
> the requested operation could not be determined.
> Attached is the slightly modified jaxws_dispatch_provider sample. The changes
> were basically made in demo.hwDispatch.server.GreeterSoapMessageProvider:
> {code:title=GreeterSoapMessageProvider.java}
> @WebServiceProvider(portName = "SoapPort1", serviceName = "SOAPService1",
> targetNamespace =
> "http://apache.org/hello_world_soap_http",
> wsdlLocation = "wsdl/hello_world.wsdl")
> @ServiceMode(value = Service.Mode.MESSAGE)
> public class GreeterSoapMessageProvider implements Provider<SOAPMessage> {
> @Resource
> private WebServiceContext context;
> public SOAPMessage invoke(SOAPMessage request) {
> QName opName = (QName)
> context.getMessageContext().get(MessageContext.WSDL_OPERATION);
> System.out.println("Incoming Client Request as a SOAPMessage calling
> operation " + opName);
> ...
> {code}
> If sending the request attached in the output of the console is:
> {{monospaced}}Incoming Client Request as a SOAPMessage calling operation
> {http://apache.org/hello_world_soap_http}greetMe{{monospaced}}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira