Разбор XML из вызова веб-службы в Java - PullRequest
0 голосов
/ 07 января 2012

Прошу прощения, если это дублирующая тема ...

У меня есть веб-сервис на c #, в котором я возвращаю объект xml, который мне нужно проанализировать в Hashmap в моем приложении для Android, возвращаемый объект из сервиса - .Net тип Dictionary

большинство других вызовов возвращают json, который я могу разобрать в JsonObject со строкой ответа, но этот конкретный вызов должен возвращать xml для других приложений

Может ли кто-нибудь посоветовать, как проще всего выполнить синтаксический анализ XML-данных, возвращаемых из веб-службы, в объекты Java, или, по крайней мере, иметь возможность создать XML-документ из ответа и извлечь значения из этого?

большое спасибо заранее

Ответы [ 2 ]

0 голосов
/ 07 января 2012

Попробуйте JAXB или SimpleXML

0 голосов
/ 07 января 2012

Существует два основных способа, и в зависимости от ваших требований вам нужно выбрать один.

1) SAX-парсер: в основном полезен, если вы хотите прочитать все элементы в XML-документе и создать объекты Java. Вот референ. SAXParsing . Этот подход требует меньше памяти, поскольку весь XML-файл не будет кэшироваться во время обработки.

2) Парсер DOM: Это полезно, когда вы хотите прочитать определенные части XML (вы можете использовать это для анализа всего файла, но я использую больше, когда мне нужно поиграть с частью XML). Это более ресурсоемкий подход, потому что весь XML-файл будет кэшироваться во время обработки. Вот пример. Дом парсинг

Вы можете использовать встроенный API Sun для этих механизмов анализа (или) есть сторонние API, такие как Apache и т. Д.,

...