Data not passed back from multiple output parameters
----------------------------------------------------
Key: AXISCPP-679
URL: http://issues.apache.org/jira/browse/AXISCPP-679
Project: Axis-C++
Type: Bug
Components: WSDL processing - Doc
Reporter: Mark Whitlock
Priority: Critical
I have a wsdl that has multiple output parameters...
<element name="get">
<complexType>
<sequence>
<element name="out1" type="xsd:string"/>
<element name="out14" type="xsd:integer"/>
<element name="out15" type="xsd:int"/>
<element name="out16" type="xsd:long"/>
<element name="out17" type="xsd:short"/>
<element name="out18" type="xsd:decimal"/>
<element name="out19" type="xsd:float"/>
<element name="out20" type="xsd:double"/>
<element name="out21" type="xsd:boolean"/>
<element name="out22" type="xsd:byte"/>
</sequence>
</complexType>
</element>
</schema>
</wsdl:types>
<wsdl:message name="get0">
<wsdl:part element="impl:get0" name="parameters"/>
</wsdl:message>
<wsdl:message name="get">
<wsdl:part element="impl:get" name="parameters"/>
</wsdl:message>
<wsdl:portType name="MultiOut">
<wsdl:operation name="get">
<wsdl:input message="impl:get0" name="get0"/>
<wsdl:output message="impl:get" name="get"/>
</wsdl:operation>
</wsdl:portType>
The code that WSDL2Ws generates does not work...
void MultiOut::get(xsd__int Value0, AXIS_OUT_PARAM xsd__string* OutValue0,
AXIS_OUT_PARAM xsd__integer* OutValue1, AXIS_OUT_PARAM xsd__int* OutValue2,
AXIS_OUT_PARAM xsd__long* OutValue3, AXIS_OUT_PARAM xsd__short* OutValue4,
AXIS_OUT_PARAM xsd__decimal* OutValue5, AXIS_OUT_PARAM xsd__float* OutValue6,
AXIS_OUT_PARAM xsd__double* OutValue7, AXIS_OUT_PARAM xsd__boolean*
OutValue8, AXIS_OUT_PARAM xsd__byte* OutValue9)
{
...
OutValue1 = m_pCall->getElementAsInteger("out14", 0);
...
}
because altering OutValue1 will not affect what the application receives since
OutValue1 is passed by value and the contents of OutValue1 are not updated. The
line should be
*OutValue1 = *(m_pCall->getElementAsInteger("out14", 0));
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira