Re: Help java.io.NotSerializableException
"Netlopa" <netlopaNO@SPAM.it> wrote in
news:h06klm$n17$1@news.gabrix.ath.cx:
<snip>
I still have this exception "java.io.NotSerializableException".
I tried to put anything as a parameter ... but nothing.
<snip>
public class File {
/**
* Create a simple Hashtable and serialize it to a file called
* HTExample.ser.
*/
public static void doSave(Object gestore) {
System.out.println();
System.out.println("+------------------------------+");
System.out.println("| doSave Method |");
System.out.println("+------------------------------+");
System.out.println();
Hashtable h = new Hashtable();
h.put("gestore.Partita", gestore);
/*h.put("string", "Oracle / Java Programming");
h.put("int", new Integer(36));
h.put("double", new Double(Math.PI));*/
try {
System.out.println("Creating File/Object output stream...");
FileOutputStream fileOut = new
FileOutputStream("D:\\HTExample.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
System.out.println("Writing Hashtable Object...");
out.writeObject(h);
System.out.println("Closing all output streams...\n");
out.close();
fileOut.close();
} catch(FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
When you serialize an object, all the objects referenced by that object
must also be serialized, and so on recursively.
Hashtable is serializable. Hashtable h references:
various String objects, which are serializable.
Integer(36), which is serializable.
Double(Math.Pi), which is serializable.
Object gestore, which is NOT serializable.
This is why you get a NotSerializableException.