我可以使用jOOX查找属性的xPath吗?

时间:2012-10-02 18:31:23

标签: java xml xml-attribute joox

jOOX可用于使用以下内容查找元素的xPath:

Element element = (Element) someNode;
String xPath = $(element).xpath();  

我可以为属性执行相同的操作吗?我试过这个:

Attr attr = (Attr) someAttributeNode;
String xPath = $(attr).xpath();   

但它返回null。

编辑:我已经设法通过从节点的xPath和属性的名称创建自己的xPath来解决它,但似乎我不应该这样做。这是完整的工作:

Element element = (Element) someNode;
String elementXpath = $(element).xpath();
String attributeName = someAttributeNode.getNodeName();
String attributeXpath = elementXpath + "/@" + attributeName;  // <-- work around

1 个答案:

答案 0 :(得分:1)

在有人给我一个更好的答案之前,我会用自己的工作:

我已经设法通过从节点的xPath和属性的名称创建我自己的xPath来解决它,但似乎我不应该这样做。这是完整的工作:

Element element = (Element) someNode;
String elementXpath = $(element).xpath();
String attributeName = someAttributeNode.getNodeName();
String attributeXpath = elementXpath + "/@" + attributeName;  // <-- work around