You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Pritesh Gajjar (JIRA)" <ji...@apache.org> on 2016/04/01 21:31:25 UTC
[jira] [Created] (CXF-6856) The BARE CXF web service invokes no
parameter operation/method for GET request from browsers.
Pritesh Gajjar created CXF-6856:
-----------------------------------
Summary: The BARE CXF web service invokes no parameter operation/method for GET request from browsers.
Key: CXF-6856
URL: https://issues.apache.org/jira/browse/CXF-6856
Project: CXF
Issue Type: Bug
Components: JAX-WS Runtime, Soap Binding
Affects Versions: 3.1.6, 2.7.1
Environment: • Java 1.6
• Spring 3.0.0
• CXF 2.7.0 / 2.7.1
• CXF web service starts with embedded Jetty using spring context
Reporter: Pritesh Gajjar
Priority: Minor
I am not sure if this is a feature or bug introduced in version 2.7.1 (or greater) but below is the behavior I noticed when GET request is sent to the *BARE* CXF web service using web browsers.
*Code Snippets:*
@WebService
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
public interface HelloWorld
{
@WebMethod(action = "/sayHi")
@WebResult(name = "strResponse", partName = "strResponse")
public String sayHi();
@WebMethod(action = "/sayHiToUser")
@WebResult(name = "strResponse", partName = "strResponse")
String sayHiToUser(@WebParam(name="user") String user);
}
@WebService
public class HelloWorldImpl implements HelloWorld
{
@Override
public String sayHi()
{
return "Hi there...";
}
@Override
public String sayHiToUser(String user)
{
return "Hi " + user;
}
}
<jaxws:endpoint
id="helloWorld"
implementor="com.cxf.service.HelloWorldImpl"
address="http://127.0.0.1:8080/HelloWorld"
endpointName="e:HelloWorld"
xmlns:e="http://service.jaxws.cxf.apache.org/endpoint">
</jaxws:endpoint>
*Environment/Configs:*
• Java 1.6
• Spring 3.0.0
• CXF 2.7.0 / 2.7.1
• CXF web service starts within embedded Jetty using spring context
*Detailed Explanation:*
*CXF Version 2.7.0:*
bq. When I access this web service using web browser with URL *"http://127.0.0.1:8080/HelloWorld"* (No ?wsdl at the end), I am getting "No such operation" response back in the web browser for both BARE & WRAPPED ParameterStyle which is the expected behavior.
*CXF Version 2.7.1 (or greater):*
bq. *ParameterStyle WRAPPED:* When I access this web service using web browser with URL *"http://127.0.0.1:8080/HelloWorld"* (No ?wsdl at the end), I am getting "No binding operation info while invoking unknown method with params unknown." response back in the web browser which is the expected behavior.
bq. *ParameterStyle BARE:* When I access this web service using web browser with URL *"http://127.0.0.1:8080/HelloWorld"* (No ?wsdl at the end), I am getting "Hi there..." response back in the web browser. It calls sayHi() operation/method but there is no SOAPAction specified in the GET request header. This is NOT the expected response. I was expecting the same response as ParameterStyle WRAPPED.
*Results:*
{quote}
*CXF Version: 2.7.0*
• URL: "http://127.0.0.1:8080/HelloWorld" (Using web browser and no ?wsdl at the end)
• ParameterStyle: *BARE* / Response: No such operation
• ParameterStyle: *WRAPPED* / Response: No such operation
• Expected Result? {color:green}*YES*.{color}
{quote}
{quote}
*CXF Version: 2.7.1 (or greater)*
• URL: "http://127.0.0.1:8080/HelloWorld" (Using web browser and no ?wsdl at the end)
• ParameterStyle: *BARE* / Response: Hi there... / Called sayHi()
• ParameterStyle: *WRAPPED* / Response: No binding operation info while invoking unknown method with params unknown.
• Expected Result? {color:red}*NO*.{color} BARE should return the same result as WRAPPED
{quote}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)