<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Xpath on MarkJacobsen.net</title><link>https://markjacobsen.net/tags/xpath/</link><description>Recent content in Xpath on MarkJacobsen.net</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Mon, 25 Mar 2013 07:25:27 +0000</lastBuildDate><atom:link href="https://markjacobsen.net/tags/xpath/index.xml" rel="self" type="application/rss+xml"/><item><title>XPath Query Not Returning any Results in Java</title><link>https://markjacobsen.net/2013/03/xpath-query-not-returning-any-results-in-java/</link><pubDate>Mon, 25 Mar 2013 07:25:27 +0000</pubDate><guid>https://markjacobsen.net/2013/03/xpath-query-not-returning-any-results-in-java/</guid><description>&lt;p&gt;In looking over documentation on XPath queries it seemed easy enough to be able to pull out values from XML, but try as I might I kept getting no results back. Even searching on the root element “/elementName” didn’t return any results. Of course, as with all things Java there’s a trick and that trick is to call setNamespaceAware(). Here’s a quick and dirty example…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
domFactory.setNamespaceAware(false); // NEVER FORGET THIS
DocumentBuilder builder = domFactory.newDocumentBuilder();
XPathFactory factory = XPathFactory.newInstance();
XPath xpath = factory.newXPath();
XPathExpression expr = xpath.compile(&amp;quot;/items/item[@id='2']&amp;quot;);
return (NodeList)expr.evaluate(domDocument, XPathConstants.NODESET);
&lt;/code&gt;&lt;/pre&gt;</description></item></channel></rss>