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
> >
>