Мне нужно ограничить поиск узла xpath поддеревом. В настоящее время я использую описанный ниже метод, но он выполняет поиск по всему документу, независимо от того, передам ли я ему документ или узел, из которого я хочу выполнить поиск.
private NodeList findNodes(Object obj,String xPathString) throws ... {
XPath xPath = XPathFactory.newInstance().newXPath();
XPathExpression expression = xPath.compile(xPathString);
return (NodeList) expression.evaluate(obj, XPathConstants.NODESET);
}
Решение, которое я использую сейчас, заключается в том, что я создаю новый документ, добавляю узел и выполняю поиск в новом документе, а затем объединяюсь. Я хочу улучшить это. Можно ли это сделать?
Используемый мной XPath: //nodeName
.