Personally I think EVERYTHING that comes back is an output parameter (or a return if you prefer that terminology). So either: - invoke should return a list and getOutputParams doesn't exist; - invoke is a void method and you must use getOutputParams to get the output.
I hate distinguishing between return and output parm, but since that's what the JAX-RPC spec says then ONLY if you specify a return value will invoke return something. Otherwise everything is an output parameter. Also, there's an open question about what we're supposed to do if you don't specify a return type nor do you specify an out parameter but the runtime gets one anyway. Does the runtime ignore it? Throw an exception? Give it to the user anyway? AXIS right now just puts it into the outputparams list. Sounds like perhaps the examples need to be revisited. Russell Butek [EMAIL PROTECTED] Vishy Kasar <[EMAIL PROTECTED]> on 02/11/2002 06:34:14 PM Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: [EMAIL PROTECTED] Subject: Call.invoke() has problems when no return type is specified Hi, There seem to be problems in AXIS (FEB-08 build) java\src\org\apache\axis\client\Call.java invoke(RPCElement) method when the return type is not specified. A null return value is returned in this case. I think the following code RPCParam param = (RPCParam)resArgs.get(0); result = param.getValue(); must be done out side of the if block if (returnType != null || paramTypes == null) { to resolve this problem. None of the userguide/samples/example* clients specify the return type and hence they will all get a return value of null.