如何获得NODESET的评估()XPathExpression的方法 - 为撒克逊9.3 LIB
问题描述:
我使用撒克逊LIB 9.3的XPath evluation如何获得NODESET的评估()XPathExpression的方法 - 为撒克逊9.3 LIB
下面的代码返回TinyElementImpl实例列表 -
XPathEvaluator evaluator = new XPathEvaluator();
XPathExpression exp = evaluator.createExpression("//a[matches(.,'#...#')]");
List<Object> result = exp.evaluate(domSource);
以前的版本支持评估方法返回一个节点集
exp.evaluate(domSource,XPathConstants.NODESET)
在撒克逊9.3 lib中是否有任何等价物?
答
对不起,我错过了这个问题。如果您想确定是否能够获得有关撒克逊问题的答案,请在SourceForge的撒克逊帮助邮件列表或论坛上提问。
如果您的XPathEvaluator是net.sf.saxon.xpath.XPathEvaluator,那么此方法仍存在于9.3中。也许你错误地实例化了一个net.sf.saxon.sxpath.XPathEvaluator?
这里的另一个困惑是,我会想象domSource是DOMSource的一个实例,但它是这种情况,那么我希望结果包括DOM节点而不是撒克逊TinyTree节点。这里的困难在于你没有显示足够的代码。
如果你想从Saxon的XPath处理器中获得最好的结果,我建议使用s9api接口而不是JAXP接口,它非常专注于DOM和XPath 1.0。