Ich erhalte java.io.NotSerializableException: java.util.ArrayList $ SubList für den folgenden Code.Warum bekomme ich die Ausnahme java.io.NotSerializableException?
ObjectInputStream os=new ObjectInputStream(new FileInputStream("AllEMExampleObjects.dat"));
Set<EntitiyMentionExample> AllEMs=(Set<EntitiyMentionExample>)(os.readObject());
EntitiyMentionExample[] AllExamples=AllEMs.toArray(new EntitiyMentionExample[0]);
ObjectOutputStream oo=new ObjectOutputStream(new FileOutputStream("C:\\Users\\15232114\\workspace\\Year2\\FormatedExamples\\TestSerialization.dat"));
oo.writeObject(AllExamples[0]);
Offensichtlich ist die Klasse EntitiyMentionExample ist Serializable, deshalb ist ein Set <> davon bereits in dat-Datei (AllEMExampleObjects.dat) gespeichert ist. Warum speichert es dann nicht eine einzige Instanz davon?
Zeigen Sie uns die komplette Stacktrace. –
Schalten Sie die Debug-Informationen für die erweiterte Serialisierung ein: http://StackOverflow.com/a/1660583/3788176. –
java.io.NotSerializableException: java.util.ArrayList $ SUBLIST \t bei java.io.ObjectOutputStream.writeObject0 (Unknown Source) \t bei java.io.ObjectOutputStream.defaultWriteFields (Unknown Source) \t bei java.io.ObjectOutputStream .writeSerialData (Unknown Source) \t bei java.io.ObjectOutputStream.writeOrdinaryObject (Unknown Source) \t bei java.io.ObjectOutputStream.writeObject0 (Unknown Source) \t bei java.io.ObjectOutputStream.writeObject (Unknown Source) \t bei TrainingDataSetFormulator.main (TrainingDataSetFormulator.java:22) –