Hi;
Element.createCopy() is not handling XPath as I
would expect - it won't accept a "/base" as an argument - it requires
"./base"
The code:
public class Dom4jTest {
public static void main(String[] args) throws
DocumentException {
System.out.println("starting");
Document document =
DocumentHelper.parseText("<root><first><last>dave</last></first></root>");
System.out.println("document = " + document); Node node =
document.selectSingleNode("/root/first");
System.out.println("node = " + node); System.out.println("str = " + node.valueOf("/root/first/last")); Element elem = (Element)
node;
System.out.println("elem = " + elem); elem =
elem.createCopy();
System.out.println("new elem = " + elem); System.out.println("new parent = " + elem.getParent()); System.out.println("str = " + elem.valueOf("/last")); System.out.println("str = " + elem.valueOf("./last")); System.out.println("all
done");
} } produces:
starting
document = [EMAIL PROTECTED] [Document: name null] node = [EMAIL PROTECTED] [Element: <first attributes: []/>] str = dave elem = [EMAIL PROTECTED] [Element: <first attributes: []/>] new elem = [EMAIL PROTECTED] [Element: <first attributes: []/>] new parent = null str = <*************** this should return dave!!!!! str = dave all done help - thanks - dave
|
- Re: [dom4j-user] Element.createCopy() root problem David Thielen
- Re: [dom4j-user] Element.createCopy() root problem Benjamin Kopic