2012-02-16 4 views
0

У меня проблема с анализом XML-ответа, который я получаю в результате запроса SOAP в приложении Java.синтаксический анализ общего XML-файла без знания точного пространства имен

Запрос обслуживается, и ответ представляет собой XML-файл, пространство имен которого подвержено изменениям время от времени, но, тем не менее, тэг, который следует за пространством имен, не изменяется.

Например, тег «статус» не изменяется ни по какой причине, изменяется только префикс пространства имен «xxx».

Таким образом, запрос: есть ли способ получить это значение тега без знания пространства имен ('xxx')?

заранее спасибо ..

ответ

0

Если пространство имен URI не меняется, но префикс делает, вы можете просто добавить URI к вашему XPaths (что-то вроде/S: Конверт/S: Body/ns1: someContentElement):

/*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' and local-name()='Envelope']/*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' and local-name()='Body']/*[namespace-uri()='http://service.example.com/' and local-name()='someContentElement'] 

Маленьких многословный, но получит около префикса меняющегося пространства имен

Смежные вопросы