thanks,
-steve
Jarek Gawor wrote:
In the RPCProvider, the piece of code that handles the output params (starting line 265) it puts the Holder objects into the argValues array starting at an index based on the number of parameters passed in the request. The problems is if some of the input parameters are optional and not sent in the request, the output parameters in the argValues will be put into the wrong location and therefore wrong operation on the service will be invoked. For example, if I have a service with a method that takes one optional input parameter and has two output parameters, and if the request does not pass the input parameter, then the argValues array will look like this: {FooHolder, BarHolder, null} but it should be: {null, FooHolder, BarHolder}. I modified that piece of code in RPCProvider to handle OUT params in the same way as the INOUT params (so that order could be preserved) and that solved this problem. If this makes sense I can submit a patch.
Jarek
Btw, it looks like org\apache\axis\configuration\FileProvider.java uses old resource key ("noService").