Использование API VTD-XML 2.11 (Java) при оценке выражения XPath concat() в простых текстах или xml-алиментах, вместо этого результат 2.0, он не со следующим исключением:Функция concat() XPath Оценка не удается при использовании с AutoPilot в VTD-XML
Exception in thread "main" com.ximpleware.XPathEvalException: Function Expr can't eval to node set
at com.ximpleware.FuncExpr.evalNodeSet(FuncExpr.java:1033)
at com.ximpleware.AutoPilot.evalXPath(AutoPilot.java:876)
Вот следующая программа:
private static String getElementValue() throws XPathParseException, XPathEvalException, NavException {
String value = null;
VTDGen gen = new VTDGen();
gen.setDoc(data.getBytes());
gen.parse(false);
VTDNav nav = gen.getNav();
AutoPilot pilot = new AutoPilot(nav);
pilot.selectXPath("concat(\"Hello\", \"Mr Buddy\")");
int bufferIndex = NO_MATCH;
if((bufferIndex = pilot.evalXPath()) != NO_MATCH) {
value= nav.getXPathStringVal();
}
System.out.println(value);
} // end of getElementValue()
Я думаю, у можете попробовать evalXpathToString метод ... –
Тогда как я могу передать XPath –
Если у вас есть пример того, как конкатенировать два XPaths или один XPATH + постоянное значение. –