I think my first response was eaten. My apologies if this shows up twice.
I'm using myservice.operation(arg1, arg2) to make the service call
using hotfix3. That part seems to be OK, it's just the XML that is
wrong. Here is (what I think) is the relevant part of my WSDL.
<xsd:complexType abstract="true" name="DataObject">
<xsd:sequence>
<xsd:element minOccurs="0" name="id" type="xsd:long"/>
<xsd:element minOccurs="0" name="version" type="xsd:long"/>
<xsd:element minOccurs="0" name="createUser" type="xsd:string"/>
<xsd:element minOccurs="0" name="createDate" type="xsd:dateTime"/>
<xsd:element minOccurs="0" name="updateUser" type="xsd:string"/>
<xsd:element minOccurs="0" name="updateDate" type="xsd:dateTime"/>
<xsd:element name="hydrated" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Application">
<xsd:complexContent>
<xsd:extension base="xsd1:DataObject">
<xsd:sequence>
<xsd:element minOccurs="0" name="code" type="xsd:string"/>
<xsd:element minOccurs="0" name="description"
type="xsd:string"/>
<xsd:element minOccurs="0" name="functions"
type="cc-coll:Set"/>
<xsd:element minOccurs="0" name="events"
type="cc-coll:Set"/>
<xsd:element minOccurs="0" name="applicationMonitors"
type="cc-coll:Set"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="Event">
<xsd:complexContent>
<xsd:extension base="xsd1:DataObject">
<xsd:sequence>
<xsd:element minOccurs="0" name="application"
type="xsd1:Application"/>
<xsd:element minOccurs="0" name="code" type="xsd:string"/>
<xsd:element minOccurs="0" name="description"
type="xsd:string"/>
<xsd:element minOccurs="0" name="userEvents"
type="cc-coll:Set"/>
<xsd:element minOccurs="0" name="roleEvents"
type="cc-coll:Set"/>
<xsd:element name="deleteFlag" type="xsd:boolean"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="Function">
<xsd:complexContent>
<xsd:extension base="xsd1:DataObject">
<xsd:sequence>
<xsd:element minOccurs="0" name="application"
type="xsd1:Application"/>
<xsd:element minOccurs="0" name="code" type="xsd:string"/>
<xsd:element minOccurs="0" name="description"
type="xsd:string"/>
<xsd:element minOccurs="0" name="userFunctions"
type="cc-coll:Set"/>
<xsd:element minOccurs="0" name="roleFunctions"
type="cc-coll:Set"/>
<xsd:element name="deleteFlag" type="xsd:boolean"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
I do notice that my collections are a "cc-col" type, which is
something Cape Clear puts in when it generates the WSDL. It may be
that I can't get there from here, so an alternative approach may be
for me to make the XML myself, and pass that to the service. I'm
feeling pretty confident that I can build the XML for my application
object, but I can't figure out how to send it to the web service.
Thanks for your help,
Steve
--- In [email protected], "ben.clinkinbeard"
<[EMAIL PROTECTED]> wrote:
>
> Its all based on what is specified in your WSDL. I don't have enough
> knowledge to diagnose your issue but I would suggest examining/posting
> the relevant part of the WSDL. Also mention which hotfix you're
> running. Hotfix 3 made significant changes to WebService.
>
> As for the basics of how to send args, I use this syntax:
>
> myOperation.arguments.customArg = customObject;
> muOperation.send();
>
> HTH,
> Ben
>
> --- In [email protected], "lrdvadersith" <lrdvadersith@>
> wrote:
> >
> > I've got a web service that takes a complex object as input. It is a
> > Document/Literal service, and I'm having problems with object's child
> > collections. I'm currently having 3 issues with the service call:
> >
> > 1) If my object contains an ArrayCollection of other objects, each
> > item in the collection is wrapped by two sets of <item> tags, rather
> > than one.
> >
> > 2) The <item> has no specified type.
> >
> > 3) The child objects seem to be serialized differently than the parent
> > object - Dates in the XML are formatted differently even though both
> > objects have Date types.
> >
> > To illustrate the issues, the following is a fragment of the XML that
> > ActionScript is generating:
> > <ns:application>
> > <ns:createDate>2007-12-18T15:14:57Z</ns:createDate>
> > <ns:events>
> > <item>
> > <item>
> > <createDate>Thu Oct 18 18:39:50 GMT-0600 2007</createDate>
> > </item>
> > </item>
> > </ns:events>
> > </ns:application>
> >
> > And here is what I need:
> >
> > <ns:application>
> > <ns:createDate>2007-12-18T15:14:57Z</ns:createDate>
> > <ns:events>
> > <item xsi:type="ns:Event">
> > <ns:createDate>2007-12-18T15:14:57Z</ns:createDate>
> > </item>
> > </ns:events>
> > </ns:application>
> >
> > Does anyone know how I can get ActionScript to produce that XML?
> >
> > Thanks in advance,
> >
> > Steve
> >
>