首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dom4 1.6.1j:返回非节点类型值的XPath可能吗?

Dom4 1.6.1j:返回非节点类型值的XPath可能吗?
EN

Stack Overflow用户
提问于 2012-07-06 20:31:07
回答 1查看 692关注 0票数 0

例如,我想返回一个节点的名称,即一个字符串,因此

/MxML/trade/trade/tradeBody/*1/local-name()

但是,当我尝试用doc.valueOf或doc.selectSingleNode或其他任何方法计算它时,我得到了这个错误:

org.dom4j.InvalidXPathException:无效的XPath表达式:/MxML/trade/tradeBody/*1/local-name()应为节点类型

我知道这意味着什么,我返回的是一个字符串,而不是一个节点,那么我该如何请求这个字符串呢?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-08 07:37:21

您确定它可以与JAXP一起工作吗?在我看来,这个表达式并不好;local-name()不是一个节点步骤。

这对dom4j来说很好:

代码语言:javascript
复制
    Document doc = DocumentHelper
            .parseText("<x:fish xmlns:x='42'>Goodbye, and thanks for all the fish</x:fish>");
    XPath xpath = new DefaultXPath("local-name(/*[1])");
    Object result = xpath.evaluate(doc);
    System.out.printf("Type: %s, Value: %s\n", result.getClass()
            .getSimpleName(), result);

打印

Type: String, Value: fish

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11362252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档