В моем приложении Flex я вызываю несколько веб-сервисов .NET, которые возвращают XML. Однако все эти веб-сервисы возвращают XML с пространством имен. Я не могу прочитать / проанализировать XML без ссылки на пространство имен, что означает, что мне нужно включить следующие строки кода в каждый класс, который вызывает WebService:
private namespace PCRWebServices = "xxx.somename.web.services";
use namespace PCRWebServices;
Я хотел бы устранить необходимость в этой статической / жестко запрограммированной логике просто для чтения XML из WebService.
Есть ли способ "удалить" пространство имен из XML, чтобы я мог прочитать его как "обычный" документ XML?
У меня есть класс, который я расширяю для каждого вызова WebService, который обрабатывает результаты и ошибки:
private function faultHandler(event:FaultEvent):void
{
}
private function resultHandler(event:ResultEvent):void
{
var resultXML:XML = new XML(event.result);
}
Я бы хотел добавить некоторую логику в обработчик результатов для «преобразования» XML. Есть идеи?
Это то, что trace(resultXML)
возвращает:
<GetDataResult xmlns="xxx.somename.web.services">
<DataSet>
<Data>
<IdNmb>15</IdNmb>
<NameTxt>Hello</NameTxt>
</Data>
<Data>
<IdNmb>16</IdNmb>
<NameTxt>World</NameTxt>
</Data>
<Status>
<Status>Success</Status>
</Status>
<ReturnCode>
<ReturnCode>0</ReturnCode>
</ReturnCode>
</DataSet>
</GetDataResult>