my wsdl
<wsdl:definitions targetNamespace="
http://test.flex">
<wsdl:documentation>
Test Service
</wsdl:documentation>
−
<wsdl:types>
−
<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="
http://test.misc.services.webservices.comosoft.com/xsd">
<xs:element name="TestObjs" type="ax211:TestObjs"/>
−
<xs:complexType name="TestObjs">
−
<xs:sequence>
<xs:element name="aa" type="xs:int"/>
<xs:element maxOccurs="unbounded" name="items" nillable="true" type="ax211:TestObj"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TestObj" type="ax211:TestObj"/>
−
<xs:complexType name="TestObj">
−
<xs:sequence>
<xs:element name="userName" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
−
<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="
http://test.flex/xsd">
−
<xs:element name="getTest">
−
<xs:complexType>
−
<xs:sequence>
<xs:element name="sid" nillable="true" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
−
<xs:element name="getTestResponse">
−
<xs:complexType>
−
<xs:sequence>
<xs:element name="return" nillable="true" type="ns0:TestObjs"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</wsdl:types>
−
<wsdl:message name="getTestMessage">
<wsdl:part name="part1" element="ns1:getTest"/>
</wsdl:message>
−
<wsdl:message name="getTestResponse">
<wsdl:part name="part1" element="ns1:getTestResponse"/>
</wsdl:message>
−
<wsdl:portType name="TestServicePortType">
−
<wsdl:operation name="getTest">
<wsdl:input message="axis2:getTestMessage" wsaw:Action="urn:getTest"/>
<wsdl:output message="axis2:getTestResponse"/>
</wsdl:operation>
</wsdl:portType>
−
<wsdl:binding name="TestServiceSOAP11Binding" type="axis2:TestServicePortType">
<soap:binding transport="
http://schemas.xmlsoap.org/soap/http" style="document"/>
−
<wsdl:operation name="getTest">
<soap:operation soapAction="urn:getTest" style="document"/>
−
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
−
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
−
<wsdl:binding name="TestServiceSOAP12Binding" type="axis2:TestServicePortType">
<soap12:binding transport="
http://schemas.xmlsoap.org/soap/http" style="document"/>
−
<wsdl:operation name="getTest">
<soap12:operation soapAction="urn:getTest" style="document"/>
−
<wsdl:input>
<soap12:body use="literal"/>
</wsdl:input>
−
<wsdl:output>
<soap12:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
−
<wsdl:binding name="TestServiceHttpBinding" type="axis2:TestServicePortType">
<http:binding verb="POST"/>
−
<wsdl:operation name="getTest">
<http:operation location="getTest"/>
−
<wsdl:input>
<mime:content type="text/xml"/>
</wsdl:input>
−
<wsdl:output>
<mime:content type="text/xml"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
−
<wsdl:service name="TestService">
−
<wsdl:port name="TestServiceSOAP11port_http" binding="axis2:TestServiceSOAP11Binding">
<soap:address location="
http://200.55.55.65:8080/LagoWebServices/services/TestService"/>
</wsdl:port>
−
<wsdl:port name="TestServiceSOAP12port_http" binding="axis2:TestServiceSOAP12Binding">
<soap12:address location="
http://200.55.55.65:8080/LagoWebServices/services/TestService"/>
</wsdl:port>
−
<wsdl:port name="TestServiceHttpport1" binding="axis2:TestServiceHttpBinding">
<http:address location="
http://200.55.55.65:8080/LagoWebServices/rest/TestService"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Steps to reproduce:
1.Generate a web service
2.Try to send this object (should contains an array of items and some int value)
Actual Results:
The int value is setted.
The array of items is null
Expected Results:
The int value is setted.
The array of items is NOT NULL
Workaround (if any):
If i create an objects ONLY with array of items (without int value) - works.
P.S.
i've check what receive this method (from the BaseTestService.as)
processResult(result:Object,wrappedData:Object):void
as result - the xml string with all datas (as expected).
but the line of code
var soapResult:SOAPResult = decoder.decodeResponse(result.message.body);
as result has EMPTY array, so the decoder has simple skip the part of information. I have no source code of
soapDecoder so i can't say why :)
with other clients (not Flex) everything works. The Soap decoders doesn't skip the part of info.
Flex test application (with source code) - http://87.234.253.27:8080/Bug_11255
WebService for this application - http://87.234.253.27:8080/Axis2/services/Bug_11255_Service
all these endpoints works only from Monday to Friday (6.00 - 22-00: GMT+01:00 Time)
thank you for support