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…
Like this? Consider joining my mailing list, or at least using my affiliate link when buying from Amazon 🙂
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("/items/item[@id='2']"); return (NodeList)expr.evaluate(domDocument, XPathConstants.NODESET);
You or someone you know looking to buy or sell?