Какой поставщик данных в flex (кроме ArrayCollection) будет работать для отдельных неповторяющихся узлов XML? - PullRequest
0 голосов
/ 18 мая 2010

Я задавал этот вопрос раньше, но не смог получить ответ .. Я получаю следующую ошибку, когда извлекаю XML, который имеет только 1 узел (без повторяющихся узлов) со страницы PHP, и я пытаюсь сохранить в ArrayCollection. -Если у меня более 1 «именных» узлов ... я НЕ получаю сообщение об ошибке.

TypeError: Error #1034: Type Coercion failed: cannot convert "XXXXXX" to mx.collections.ArrayCollection.

эта ошибка возникает в виде строки кода:

myList= e.result.list.name;

Я использую эту коллекцию ArrayCollection в качестве поставщика данных для Компонента - есть ли альтернатива, которую я могу использовать, которая будет принимать ОБЫЧНЫЕ и повторяющиеся узлы, а также работать в качестве поставщика данных? Заранее спасибо!

код:

[Bindable]
private var myList:ArrayCollection= new ArrayCollection();

    private function getList(e:Event):void{

        var getStudyLoungesService:HTTPService = new HTTPService();
        getStuffService.url = "website.com/asdf.php";
        getStuffService.addEventListener(ResultEvent.RESULT, onGetList);
        getStuffService.send();

    }

    private function onGetList(e:ResultEvent):void{

        myList= e.result.list.name;
    }

1 Ответ

2 голосов
/ 18 мая 2010

XMLListCollection

http://livedocs.adobe.com/flex/3/langref/mx/collections/XMLListCollection.html

Попробуйте что-то вроде этого (это в коде Psuedo):

[Bindable] private var myList: XMLListCollection = new XMLListCollection ();

private function getList(e:Event):void{

    var getStudyLoungesService:HTTPService = new HTTPService();
    getStuffService.url = "website.com/asdf.php";
    getStuffService.addEventListener(ResultEvent.RESULT, onGetList);
    getStuffService.send();

}

private function onGetList(e:ResultEvent):void{
    var results : XML = e.result as XML;
    myList.source = results;
}
...