XMLListCollection has a toArray() method. So maybe:
var ac:ArrayCollection = new ArrayCollection(new XMLListCollection(xml.menuas XMLList).toArray()); it might be a bit nicer written on more than one line, but you get the idea. Doug On 6/8/07, dorkie dork from dorktown <[EMAIL PROTECTED]> wrote:
Since the ArrayCollection can only accept an Array I think my problem is how to convert an XMLList from an XML object into an Array. On 6/8/07, dorkie dork from dorktown <[EMAIL PROTECTED]> wrote: > > I cant successfully convert xml to a array collection. I don't know what > I'm doing wrong. It works in MXML not AS3. > > Here is the result from a service call: > > public function resultHandler(event:ResultEvent):void { > > trace("result :" + event.result); > var myXML:XML = XML(event.result); > var ac:ArrayCollection = new ArrayCollection(); > ac.source = myXML.menu as Array; > ac.refresh(); > trace(ac.length); > linkBarNav.dataProvider = ac; > > } > > > TypeError: Error #1034: Type Coercion failed: cannot convert > [EMAIL PROTECTED] to Class. > > It works fine with this model : > > <mx:Model id="menuXML"> > <mainmenu> > <menu id="madmin" label="Maintenance" role="admin" > roleAction="hide"> > <submenu id="mudacControl" label="UDAC Controls" > link="/das/admin/udacControlMaint.faces" role="base" roleAction="diable"/> > <submenu id="mcmrlUsers" label="CMRL Users" > link="/das/admin/cmrlUsersMaint.faces" role="base" roleAction="diable"/> > <submenu id="mtemplates" label="Templates" > link="/das/admin/templateMaint.faces" role="base" roleAction="diable"/> > <submenu id="mquestions" label="Questions" > link="/das/admin/questionMaint.faces" role="base" roleAction="diable"/> > </menu> > <menu id="mwork" label="Queues" role="base"> > <submenu id="mworkQueue" label="Work Queue" > link="/das/work/workQueue.faces" role="base" roleAction="diable"/> > <submenu id="missuesQueue" label="Issues Queue" > link="/das/work/issuesQueue.faces" role="base" roleAction="diable"/> > <submenu id="mjbpmNodes" label="Nodes" > link="/das/work/nodes.faces" role="base" roleAction="diable"/> > </menu> > <menu id="mhelp" label="Help" role="base"> > <submenu id="mhelpDoc" label="Help Document" > link="/somelink" role="base" roleAction="diable"/> > </menu> > </mainmenu> > </mx:Model> > > <mx:ArrayCollection id="myAC" source="{menuXML.menu}" > filterFunction="filterMenu"/> >