常常需要在两个Document中互相复制Element,可是Dom4j中使用Element.add(Elemnet)方法就会出现出题的错误:
"The Node already has an existing parent"
查看AbstractElement.java的源码,得到解决办法:调用Element的clone()方法。
Element allAdd = (Element)add.clone();
xaldoc.getRootElement().add(allAdd);
本文介绍在使用Dom4j进行XML文档操作时遇到的一个常见问题:如何正确地从一个Document复制Element到另一个Document中,避免出现TheNodealreadyhasanexistingparent错误。通过调用Element的clone()方法可以有效解决此问题。
常常需要在两个Document中互相复制Element,可是Dom4j中使用Element.add(Elemnet)方法就会出现出题的错误:
"The Node already has an existing parent"
查看AbstractElement.java的源码,得到解决办法:调用Element的clone()方法。
Element allAdd = (Element)add.clone();
xaldoc.getRootElement().add(allAdd);
235
2558
1327
2143
1781
5506

被折叠的 条评论
为什么被折叠?