If Exchange is the last parameter on the method parameter list of a JAX-WS 
operation, then CXF generates a part for it, so invoking the service fails 
because there will be too many parameters 
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: CXF-1180
                 URL: https://issues.apache.org/jira/browse/CXF-1180
             Project: CXF
          Issue Type: Bug
          Components: JAX-WS Runtime, JAXB Databinding, Service Model
    Affects Versions: 2.1
         Environment: 20071002 snapshot
            Reporter: Gyorgy Orban


If Exchange is the last parameter on the method parameter list of a JAX-WS 
operation, then CXF generates a part for it, so invoking the service fails 
because there will be too many parameters. This happens because 
AbstractInvoker.insertExchange puts the Exchange on the parameter list, but the 
length of the params array will be the number of parameters of the method + 1. 
A possible solution would be to skip the Exchange parameter in the service 
building process.
For STAX services it works fine.

Example:

This method signature doesn't work:

public void arithmetic(@WebParam(targetNamespace = NS_URI, name = "Num1")
        double num1, @WebParam(targetNamespace = NS_URI, name = "Num2")
        double num2,
                        @WebParam(targetNamespace = NS_URI, name = "Add", mode 
= Mode.OUT)
                        Holder<Double> add,
                        @WebParam(targetNamespace = NS_URI, name = "Sub", mode 
= Mode.OUT)
                        Holder<Double> sub,
                        @WebParam(targetNamespace = NS_URI, name = "Mul", mode 
= Mode.OUT)
                        Holder<Double> mul,
                        @WebParam(targetNamespace = NS_URI, name = "Div", mode 
= Mode.OUT)
                        Holder<Double> div, 
                        Exchange ex) {
...
}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to