Problem beim Vertauschen von zwei DOM-Knoten

Sveta

Grünschnabel
Hallo zusammen,

ich hätte folgendes Problem. Ich möchte in meinem DOM-Baum 2 Kindelemente des Elementes "node" vertauschen. Bisher hab ich das mit gewöhnlichem swapping versucht:

Code:
...
//node ist das Eltern-Element
Element child = (Element) node.getElementsByTagName("my_child").item(0);
Element child2 = (Element) node.getElementsByTagName("my_child2").item(0);	
//swapping
Element tmp = child;
child = child2;
child2 = tmp;

saveDocument(document);

Bei der Ausgabe von Werten der vertauschten Elemente sind die Änderungen noch zu sehen. Aber sie werden NICHT in die Datei geschrieben!
Ich habe auch so versucht:
Code:
Element tmp = child;
node.replaceChild(child2, child);
node.replaceChild(tmp, child2);

Da läufts aber noch schiefer (das Element <child2> wird gelöscht).

Hat jemand vielleicht eine Lösung?
Danke für weitere Hinweise!

Gruß, Sveta
 
Habe das Problem gelöst, es lag daran, dass nur die Java-Referenzen verändert wurden, aber keine vom DOM-Baum.

Mit
Code:
Node tmp = child2;
node.replaceChild(child, child2);
node.insertBefore(tmp, child);
hats dann funktioniert.
 

Neue Beiträge

Zurück