Sending HashMap over network

hi there,

Is there any way I can get around this HashMap bug?

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4756277

I tried to write a HashMap object over a network and the following exception was generated:

java.io.NotSerializableException: java.util.HashMap$EntrySet

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)

at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)

at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)

at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)

at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)

...

...

Regards,

[827 byte] By [Parker_a] at [2007-11-26 16:27:31]
# 1

Due to this bug you can't use serialization mechanism on HashMap. A workaround should be to implement a SerializedHashMap class which extends HashMap and reimplement method for serialization. Methods to reimplement are:private void writeObject (java.io.ObjectOutputStream out) throws IOException;

and

private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException;

You can found useful tips of about write your code here: java.sun.com/docs/books/tutorial/essential/io/objectstreams.html

topfoxya at 2007-7-8 22:51:44 > top of Java-index,Core,Core APIs...