Highlighted

Webservice returning null values

FlexOnNet

10-09-2008

Webservice returning null values when consuming .net
webservice and return datatype is string[].



<mx:WebService id="Content" wsdl="
http://www.paxsonmarketing.com/Content.asmx?WSDL">

<mx:operation name="Countries"
resultFormat="{ObjectProxy}" result="getCountries_result(event);"
fault="getCountries_fault(event);" >

<mx:request>

<AffiliateID>{AffiliateID}</AffiliateID>

<Password>{AffiliatePassword}</Password>

<AvailableOnly>true</AvailableOnly>

</mx:request>

</mx:operation>

</mx:WebService>



Above is what my webservice looks like. Basically I tried to
use the Flex 3 Built in 'Data' > 'Import Web services
functionality' however this also returned a null values for type..
'arrayOfString'. I have tested the webservice and it def returns an
'arrayOfString'. I tried the above code as well and it does the
same.



I tried other methods to the same webservice and they work if
I am not returning type of 'arrayOfString'.



Any Ideas?

Replies

Highlighted

Dane_of_Dalrymp

11-09-2008

I am having a similar issue. I will connect to a .NET
webservice (basicHTTP binding) and get results, but some of my
nested results (i.e. objects, arrays of related objects) are coming
back empty/null.



My classes are generated by the Import WSDL functionality
found in the Eclipse plugin for Flex.



Are there classes, types etc that Flex can't interpret or
populate?



Thanks,

biges

14-09-2008

my class can transfer parameters which datatype is String.
and when my flex class can receive parameters Correctly,I transfer
String to XMLList and bonding to DataGird.
Highlighted

Dane_of_Dalrymp

15-09-2008

Where I am seeing issue with within a deep class. My WSDL is
for a .NET WCF webservice, with multiple WSDL reference files. I
wonder if that has anything to do with it?



Here is an excert of my WSDL describing the two complex
classes that are not being serialized:



Both EntityTypes and PropertyType under Entity are coming
back as NULL:

(these are the two that I am referring to)

..

<xs:element minOccurs="0" name="EntityTypes"
nillable="true" type="tns:ArrayOfEntityType" />

...

<xs:element name="ArrayOfEntityType" nillable="true"
type="tns:ArrayOfEntityType" />

..



- <xs:complexType name="Entity">

- <xs:sequence>

<xs:element minOccurs="0" name="Comment" nillable="true"
type="xs:string" />

<xs:element minOccurs="0" name="DisplayName"
nillable="true" type="xs:string" />

<xs:element minOccurs="0" name="Domain" nillable="true"
type="xs:string" />

<xs:element minOccurs="0" name="EntityTypes"
nillable="true" type="tns:ArrayOfEntityType" />

<xs:element minOccurs="0" name="Identifier"
nillable="true" type="xs:string" />

<xs:element minOccurs="0" name="Properties"
nillable="true" type="tns:ArrayOfProperty" />

</xs:sequence>

</xs:complexType>

<xs:element name="Entity" nillable="true"
type="tns:Entity" />

- <xs:complexType name="ArrayOfEntityType">

- <xs:sequence>

<xs:element minOccurs="0" maxOccurs="unbounded"
name="EntityType" nillable="true" type="tns:EntityType" />

</xs:sequence>

</xs:complexType>

<xs:element name="ArrayOfEntityType" nillable="true"
type="tns:ArrayOfEntityType" />

- <xs:complexType name="EntityType">

- <xs:sequence>

<xs:element minOccurs="0" name="DisplayName"
nillable="true" type="xs:string" />

<xs:element minOccurs="0" name="Identifier"
nillable="true" type="xs:string" />

<xs:element minOccurs="0" name="IsDirect"
type="xs:boolean" />

</xs:sequence>

</xs:complexType>

<xs:element name="EntityType" nillable="true"
type="tns:EntityType" />

- <xs:complexType name="ArrayOfProperty">

- <xs:sequence>

<xs:element minOccurs="0" maxOccurs="unbounded"
name="Property" nillable="true" type="tns:Property" />

</xs:sequence>

</xs:complexType>

<xs:element name="ArrayOfProperty" nillable="true"
type="tns:ArrayOfProperty" />

- <xs:complexType name="Property">

- <xs:sequence>

<xs:element minOccurs="0" name="PropertyType"
nillable="true" type="tns:PropertyType" />

<xs:element minOccurs="0" name="PropertyValues"
nillable="true" type="tns:ArrayOfPropertyValue" />

</xs:sequence>

</xs:complexType>

<xs:element name="Property" nillable="true"
type="tns:Property" />

- <xs:complexType name="PropertyType">

- <xs:sequence>

<xs:element minOccurs="0" name="DisplayName"
nillable="true" type="xs:string" />

<xs:element minOccurs="0" name="Identifier"
nillable="true" type="xs:string" />

<xs:element minOccurs="0" name="IsMultiValued"
type="xs:boolean" />

<xs:element minOccurs="0" name="ValueType"
nillable="true" type="xs:string" />

</xs:sequence>

</xs:complexType>

<xs:element name="PropertyType" nillable="true"
type="tns:PropertyType" />

- <xs:complexType name="ArrayOfPropertyValue">

- <xs:sequence>

... (had to cut is short to fit into post!)
Highlighted

BenjaminBarker

14-11-2008

I'm having the same issue with complex WSDL and FlexBuilder3
Web Services import wizard.



I think this is related to this issue on the Adobe bug
tracking :
http://bugs.adobe.com/jira/browse/FB-12201.




I can see the data in the response from the server, but Flex
chokes on decoding the SOAP response. Using the suggestion in the
link above I tried overriding the soad decoder class , but now I
get null value for my event results.



Looks like there is a fix from Adobe, but it will only come
out as part of Flex 4? 😞