XML DOM: Wie Element in ein anderes Dokument kopieren?
-
ARGH! Ich werd noch verrückt! Weiß jemand zufällig wie man mit dem DOM ein Element bzw. Node kopieren kann?
Ich will ein Element aus einem XML-Dokument in ein anderes XML-Dokument kopieren. Ohne kopieren geht das natürlich nicht. Nur wie kann man ein Element einfach kopieren, ohne jedes Attribute zu kennen?
die cloneNode() Methode bringt mir leider nichts, da ich trotzdem diese Exception erhalte:
org.w3c.dom.DOMException: WRONG_DOCUMENT_ERR: Ein Knoten wird in einem anderen Dokument verwendet als dem, über das er erstellt wurde.
Welche Möglichkeit gebe es, um trotzdem eine Kopie machen zu können die man in einem anderen XML-Dokument hinzufügen kann?
Notfalls auch "auschneiden"... hauptsache ich bekomme es in das andere Dokument. Da ich mehrere Dokument-Elemente zu einem Dokument zusammenfassen will.
-
http://www.w3.org/DOM/faq.html#ownerdoc
Mit DOM Level 1 geht es leider nicht. Mit DOM Level 2 kann man kopieren und Level 3 auch verschieben.
Hab jetzt auf manuellem Wege gelöst, jedes Element, jedes Kind und alle Attribute kopiere ich "per Hand".
-
doch geht, und zwar mit der ImportNode methode: http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/Document.html#importNode(org.w3c.dom.Node, boolean)
-
Oh nein! Im ernst? Habe heute fast den ganzen Nachmittag verbracht einen Kopiercode zu schreiben. Mußte leider heute damit schon fertig werden. Aber merke ich mir für das nächste Mal bzw wenn ich mal Zeit habe, werde ich die Stelle mal aufräumen.
Danke auf jeden Fall!