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


Reply via email to