DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16141>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16141 Wrong return ParameterDesc returned during deserialization when using a split WSDL description Summary: Wrong return ParameterDesc returned during deserialization when using a split WSDL description Product: Axis Version: 1.1beta Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: Other Component: Serialization/Deserialization AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Ok, this one is a bit strange. I'm in the process of tracking it down, but it hasn't been easy. I'm using the attached WSDL documents to initialize a Service and Call object. When using the single WSDL document (NasdaqQuotes.wsdl) everything works fine. When using the split WSDL documents (NasdaqQuotes_Impl.wsdl and NasdaqQuotes_Interface.wsdl) I'm getting a "Bad Types" exception while deserializing the response message. I traced the exception to the org.apache.axis.message.RPCHandler class and through a bit of debugging found the basic problem but I'm not yet sure what's causing the problem. On line 215 in RPCHandler, the code attempts to get the method return ParameterDesc using a QName. Now, the QName that is passed in is exactly what is expected given the WSDL portType and message descriptions ("getPriceReturn"), but the ParameterDesc that is returned is the ParameterDesc for the input parameter ("symbol") ... (see the WSDL to understand where I'm getting these names). So basically, the OperationDesc is returning the wrong ParameterDesc for the operations return value... but it ONLY happens when using a split WSDL description. Testing with a number of other split WSDL descriptions and I get the exact same problem. <snip from="RPCHandler.java"> [215] if (isResponse) { [216] paramDesc = operation.getOutputParamByQName(qname); [217] } else { [218] paramDesc = operation.getInputParamByQName(qname); [219] } </snip> Line [216] is the one where the problem occurs.