I'm trying to call a method to a webservice but when I pass the arguments to send the call one of the arrays isn't translated into the SOAP xml. I'm not sure how to determine if this is a bug in Flex or something in the wsdl so any help with that at least is appreciated.
This is the object I'm passing as the operation arguments.
(Object)#0 date = "" dateFrom = "2010-04-17" dateGranularity = "day" dateTo = "2010-04-17" elements = (Array)#1  (Object)#2 id = "prop5" locale = "en_US" metrics = (Array)#3  (Object)#4 id = "pageViews" reportSuiteID = "slp3dorlive"
This is the SOAP body that results (both locale and elements array are missing):
<SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <tns:Report.QueueOvertime xmlns:tns="http://www.omniture.com/"> <reportDescription xsi:type="tns:reportDescription"> <reportSuiteID xsi:type="xsd:string">slp3dorlive</reportSuiteID> <date xsi:type="xsd:string"></date> <dateFrom xsi:type="xsd:string">2010-04-17</dateFrom> <dateTo xsi:type="xsd:string">2010-04-17</dateTo> <dateGranularity xsi:type="xsd:string">day</dateGranularity> <metrics SOAP-ENC:arrayType="tns:reportDefinitionMetric" xsi:type="SOAP-ENC:Array" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"> <item xsi:type="tns:reportDefinitionMetric"> <id xsi:type="xsd:string">pageViews</id> </item> </metrics> </reportDescription> </tns:Report.QueueOvertime> </SOAP-ENV:Body>
Turns out I needed to set null values for all the other arguments in the definition that I wasn't using. After that Flex was translating it properly.