Как насчет:
List nodeList = valuePath.selectNodes(requestElement);
if (nodeList.isEmpty()) ...
Обновление: @ Алехандро указал, что было бы полезно добавить объяснения.
Очевидно, что selectSingleNode () не возвращает null и не предлагает какой-либо другой способ отличить выражение XPath от контекста, который приводит к пустому набору узлов, и тех, которые дают один или несколько узлов. Так что это не удовлетворит насущную потребность.
Однако selectNodes () возвращает Список узлов, соответствующих выражению XPath в данном контексте. Итак, предположительно, мы можем использовать метод List.isEmpty () (или метод size ()), чтобы определить, соответствует ли XPath нулевым узлам или ненулевым.
Если узел сопоставляется, чтобы получить (первый) сопоставляемый узел, мы можем использовать nodeList.get(0)
:
List nodeList = valuePath.selectNodes(requestElement);
if (!nodeList.isEmpty())
doSomethingWith(nodeList.get(0));
Я не проверял это, но это должно сделать вас в пределах досягаемости вашей цели.