/ / Jak sprawić, by Flex tworzył jednoczęściowe tablice z danych XML? - xml, flex, actionscript-3

Jak sprawić, aby Flex tworzył jednoczęściowe tablice z danych XML? - xml, flex, actionscript-3

Pobieram dane XML w Flexie za pomocą HttpService. Mam resultFormat właściwość w instancji HttpService ustawiona na HTTPService.RESULT_FORMAT_OBJECT. Wynik zawiera dane podobne do tych:

<!-- ... -->
<children>
<item><!-- ... --></item>
<item><!-- ... --></item>
<!-- ... -->
<children>
<!-- ... -->

Dostaję tablicę o nazwie item pod elementem children, gdy jest więcej niż jeden item rodzeństwo. Jeśli jest tylko jeden, konwersja nie może go odróżnić od skalarnego.

Co muszę zmienić, aby Flex przekonwertował wszystko item elementy do tablicy z 0 lub więcej elementów?

Co powinienem zrobić, aby uzyskać członka tablicy children, upuszczając item opakowania w ogóle?

XML jest generowany przez Struts po stronie serwera. Zawsze mam możliwość zmiany struktury dokumentu tam, ale teraz jestem zainteresowany tym, co mogę zrobić z Flex.

Odpowiedzi:

0 dla odpowiedzi № 1

The item Obiekt powinien być XMLList czy jest jeden wpis lub kilka. (To będzie undefined jeśli ich nie ma.)

Możesz użyć XML metody na nim, jeśli jest tylko jeden element, ale to jest dla wygody Dokumentacja XMLList.

Polecam również komentarz 5 na ten temat wpis na blogu Mike Morearty (wersja z pamięci podręcznej, ponieważ strona wydaje się być niedostępna).


-1 dla odpowiedzi № 2

Spróbuj tego:

try {
for (var i:int = 0; /* loop forever till error is thrown */; i++) {
var j:String = String( children.item[ i ].SomeOtherAttribute ); // if its a string
}
} catch (re:RangeError) {
}