JAXB Unmarshal

reaction93

Mitglied
Hallo mein Problem ist ich marshal eine Objekt das eine Liste enthält danach will ich diese wieder Unmarshalen sobald ich das tue kommt die Exception [org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 2; Markup im Dokument vor dem Root-Element muss ordnungsgemäß formatiert sein.]

Hier mein Unmarshal Code

Java:
private Users u = new Users();

JAXBContext jc = null;
        try {
            jc = JAXBContext.newInstance(Users.class);
            javax.xml.bind.Unmarshaller um = jc.createUnmarshaller();

            try {
              u = (Users) um.unmarshal(new FileInputStream("users.xml"));
            } catch (FileNotFoundException ex) {
                System.out.println("First Run");
            }
          
            
        } catch (JAXBException ex) {
            Logger.getLogger(Register.class.getName()).log(Level.SEVERE, null, ex);
        }

und hier meine 2 Klassen

Java:
@XmlRootElement(name = "User")
public class User {

    @XmlElement(name = "ID", required = true)
    int id;
    @XmlElement(name = "Username", required = true)
    private String username;
    @XmlElement(name = "E-Mail", required = true)
    private String mail;
    @XmlElement(name = "Password", required = false)
    private String password;
    @XmlElement(name = "Password(DES)", required = true)
    private String encrypted;
    private Cipher ecipher;
    private Cipher dcipher;
......

Java:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "")
public class Users {

    @XmlElement
    ArrayList<User>users = new ArrayList<User>(); 
    
    public ArrayList<User> getUsers() {
        return users;
    }

    public void setUsers(ArrayList<User> users) {
        this.users = users;
    }

Bitte um Hilfe
 
Probier mal statt:
Code:
@XmlRootElement(name = "")

Code:
@XmlRootElement(name = "users")

die Fehlermeldung sagt ja auch was von wegen Root-Element.
 

Zurück
Oben