Я использую HTTPservice для загрузки XML и отображения результатов в списке - он работает, когда найдено более 1 записи XML .... но когда есть только ОДНА единственная возвращенная запись XML, она по какой-то причине обрабатывается по-разному и генерирует эту ошибку :
Suspended: TypeError: Error #1034: Type Coercion failed: cannot convert mx.utils::ObjectProxy
Я вижу такие сообщения:
http://anupushkaran.blogspot.com/2010/02/typeerror-error-1034-type-coercion.html
но я не могу понять, как адаптировать его к моему блоку кода HTTPService resultHandler ...
Я использую FB 4.6, и моя структура XML выглядит следующим образом:
SiteXYZ
Events
EventListing
и все данные, которые я хочу использовать, находятся в узле EventListing.
Я протестировал некоторый код, который может определять, когда длина того, что возвращается, поэтому я думаю, что могу просто определить, когда длина равна 1, а затем обрабатывать что-то по-другому - хотя не знаю, что.
Еще одна вещь, которую я вижу, которая, как мне кажется, приближает меня ... когда я смотрю на TreeView> Response> Response Body на сетевом мониторе, я вижу, что при успешной поездке тело возвращается следующим образом:
SiteXYZ
Events
EventListing
[0]
[1].... and so on....
Но в тех случаях, когда возвращается ОДНА запись, тело ответа возвращается как:
SiteXYZ
Events
EventListing
так что я не могу определить, когда это только ОДНА возвращенная запись, а затем соответствующим образом установить список dataProvider? так что при большом количестве возвращенных записей поставщик данных устанавливается с помощью:
list1.dataProvider = myXML.lastResult.SiteXYZ.Events.EventListing;
но если это всего лишь ОДНА возвращенная запись, как будет установлен этот dataProvider? это не сработало:
list1.dataProvider = lfXML.lastResult.LeisureFun.Events;
Может кто-нибудь помочь с этим? мой подход далек от базы? извините за бессвязный характер вопроса, но когда я набирал его, я останавливался примерно 5 раз и пробовал ряд вещей, которые приходили мне в голову, когда я размышлял над этим ... все равно ничего не сработало ... Я чувствую, что я что-то понял (хотя может ошибаться), но пока не могу решить эту проблему.