Я пытаюсь создать выражение XPath в Java (8, реализация по умолчанию XPath). Я делаю следующее:Java XPath возвращает один результат вместо NodeSet
Object res = xpath.evaluate("(//*[local-name()='PartyId'])", requestDom, XPathConstants.NODESET);
У меня есть несколько узлов PartyId в документе на том же уровне, потому что родитель повторяет. Я получил свой результат, но только один узел. (первый).
Боковая информация: если я напишу [$ k] в конце выражения, например [1] или [2], я получил свои элементы, но мне нужны все они. :(
Однако, если я испытывать тот же XPath, например в http://www.freeformatter.com/xpath-tester.html я получаю несколько результатов, который является ожидаемым результатом. Любые идеи?
пс я попытался поставить Saxon на пути к классам, но она полностью разбивает мое приложение (Spring-Boot WS).
Спасибо большое!
UPDATE я не смог правильно проверить результат, и это было абсолютно правильным.
Вы можете показать код java, который сообщает вам, что вы получаете только один узел? – LarsH
А также пример вашего XML-файла. – crigore
@LarsH Я проверил вывод с помощью инструмента отладчика, но, возможно, я неправильно понял то, что увидел - сейчас проверяю. Будет предоставлять обновление – gyorgyabraham