XmlEncoder übersieht Felder

dev_random

Mitglied
Hallo zusammen,

meine Einstellungen verwalte ich in einer Klasse Settings. Diese möchte ich gerne als XML speichern.

Klasse:
Java:
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;

import javax.xml.bind.annotation.XmlElement;

public class Settings implements Serializable {
	private static final long serialVersionUID = -7771571132898206462L;
	
	private String serverUrl;
	@XmlElement(name="otherUserIds")
	private List<String> otherUserIds = new LinkedList<String>();

	public String getServerUrl() {
		return serverUrl;
	}

	public List<String> getOtherUserIds() {
		return otherUserIds;
	}

	public void setServerUrl(String value) {
		serverUrl = value;
	}

	public void setOtherUserIds(List<String> value) {
		otherUserIds = value;
	}
}

Serialisieren via:
Java:
			fos = new FileOutputStream(settingsFile);

			// Create XML encoder.
			XMLEncoder xenc = new XMLEncoder(fos);

			// Write object.
			xenc.writeObject(settings);
			xenc.close();
Für das Feld serverUrl klappt das auch ganz wunderbar, nur beim Feld otherUserIds nicht. Ich vermute, es liegt daran, dass es sich dabei um eine Liste handelt.

Gibt es dafür eine "einfache" Lösung oder muss ich selbst eine serialisierbare Liste erstellen?

Danke im Voraus
 

Noctarius

Top Contributor
Reagiert der XMLEncoder überhaupt auf die Xml-Bind Annotations?
Normal macht der doch dieses spezielle Java-Sun-Xml Format oder nicht?
 

Ähnliche Java Themen

Neue Themen


Oben