How to update XML using XPath and Java

Use setNodeValue. First, get a NodeList, for example:

myNodeList = (NodeList) xpath.compile("//MyXPath/text()")
           .evaluate(myXmlDoc, XPathConstants.NODESET);

Then set the value of e.g. the first node:

myNodeList.item(0).setNodeValue("Hi mom!");

More examples e.g. here.

As mentioned in two other answers here, as well as in your previous question: technically, XPath is not a way to “update” an XML document, but only to locate nodes within an XML document. But I presume the above is what you want.

EDIT: Responding to your comment… Are you asking how to write your DOM to an XML file after you’ve finished editing the DOM? If so, here are two examples of how to do it:

http://www.java2s.com/Code/Java/XML/WriteDOMout.htm

http://download.oracle.com/javaee/1.4/tutorial/doc/JAXPXSLT4.html

Leave a Comment