This exception is thrown by the readObject() method of an ObjectInputStream when it encounters primitive type data where it expects object data. Despite the exception name, this data is not "optional," and object deserialization is aborted.
public class OptionalDataException extends ObjectStreamException { // No Constructor // Public Instance Variables public boolean eof; public int length; }
Object->Throwable(Serializable)->Exception->IOException->ObjectStreamException->OptionalDataException
ObjectInputStream.readObject()