Reputation: 4636
I have a given xml structured like this:
<elem>
<val id="1">aaa</val>
<val id="2">bbb</val>
</elem>
With SAXReader (DOM4J), how can I get the value contained into the node with id = 1 ('aaa' in the example)?
I've tried this:
String value = elem.element("val[@id='1']")
where elem is the right "path.current", but it didn't work.
Probably I'm writing the condition with a wrong syntax.. suggestions?
Upvotes: 2
Views: 4980
Reputation: 12817
The xpath syntax looks fine, but you should use the selectSingleNode method instead.
Node value = elem.selectSingleNode("val[@id='1']/text()");
Upvotes: 3
Reputation: 103
You can try the full XPath: /elem/val[@id='1'] or any parent wildcard //val[@id='1']
Upvotes: 0