SWT - SetData() Probleme...

GRU_EGO

Grünschnabel
Hallo,
ich habe mir einen Baum aufgebaut, und als Hintergrundstruktur ist der gleich mit dem internen JDOM-Baum.
Wenn ich aber mit:
Code:
for (Iterator iter = l.iterator(); iter.hasNext();) {

					Attribute a				= (Attribute) iter.next();

					String n 				= a.getName();
					String wert		              = a.getValue();

					TreeItem NodeItem = new TreeItem(root,0);
					NodeItem.setText("<Server>"+n+":"+wert);
					
					NodeItem.setData(a);
					System.out.println("testen"+a+";"+wert.getValue());


				}
funktioniert, bekomme auf der Kommandozeile dann:

testen[Attribute: name="SERVER"];SERVER
testen[Attribute: wert="404"];404

...
wenn ich aber dann die Werte per F2 ändern möchte:
Code:
final TreeEditor editor = new TreeEditor(baum); //bezieht sich auf mein vorher aufgebautes tree
...
			tree.addKeyListener(new KeyAdapter() {
				public void keyPressed(KeyEvent event) {
					if (event.keyCode == SWT.F2 && tree.getSelectionCount() == 1) {
						final TreeItem item = tree.getSelection()[0];
						String s = item.getText();
		
						Attribute b = (Attribute)item.getData();
					
						b.setValue(s);

						item.setData(b);
Kommt dann per Überprüfung mit dem internen JDOM Baum (ob es synchron ist)
Code:
XMLOutputter out = new XMLOutputter(Format.getPrettyFormat());
out.output(doc, System.out);
als Ausgabe auf der Kommandozeile:
Code:
<Server name="Server" wert="404" type="&lt;Server&gt;wert:404" />
Beim debuggen sehe ich, dass b zwar ein Attribute ist, aber als wert steht da nicht 404, sondern:

variable a value = Attribute (id=43)
name = "wert"
value = "<Server>wert 404" //HIER SOLLTE NUR 404 STEHEN, KEIN STRING!

Bitte um Hilfe!
Danke und Grüsse
 
Zuletzt bearbeitet:
Zurück