Ho creato due classicine di prova:
Codice:
Tutti gli import del caso:
public class proveCreazioneXML{
public static void main(String [] args)throws Exception{
classeDiProva c = new classeDiProva(10);
XMLEncoder e = new XMLEncoder(
new BufferedOutputStream(
new FileOutputStream("Test.xml")));
e.writeObject(c);
e.flush();
e.close();
}
}
e
Codice:
import java.io.Serializable;
import java.util.*;
public class classeDiProva implements Serializable{
private int numero;
public classeDiProva(int a){
this.numero= a;
}
}
compila egregiamente, poi vado a eseguire e mi da il seguente output:
Codice:
java -ea proveCreazioneXML
java.lang.InstantiationException: classeDiProva
Continuing ...
java.lang.Exception: XMLEncoder: discarding statement XMLEncoder.writeObject(classeDiProva);
Continuing ...
In teoria dovrebbe darmi:
Codice:
<classeDiProva>
<int>10</int>
</classeDiProva>
Cosa posso aver sbagliato?