classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Serialization


From: Guilhem Lavaux
Subject: Serialization
Date: Sun, 10 Aug 2003 17:20:34 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3.1) Gecko/20030428

Hi,

I nearly managed to get Classpath's serialization up to kaffe's level and at the
same time keeping the advantage of it. However, it is "nearly". As I said to
Mark Wielaard, kaffe's regression tests TestSerialVersions.Test0007, Test0009,
Test0010, Test0011, Test0013 fails; but also TestSerialFields.Test0010 and
Test0015. These tests are problematic because it seems the field serialPersistentFields has an effect on the deserialization. The specification is not really clear for that point although all documentation I came across says serialPersistentFields is normally only used for serialization. I checked JDK: except for one test, its output is the same
as the expected one (which means kaffe's previous implementation was right
except for one test).

What is your opinion on that ? The spec of serialization says:
"By using |serialPersistentFields| to define the Serializable fields for a class, there no longer is a limitation that a serializable field must be a field within the current definition of the |Serializable| class. The |writeObject| and |readObject| methods of the |Serializable| class can map the current implementation of the class to the serializable fields of the class using the interface that is described
in Section 1.7 "Accessing Serializable Fields of a Class
<http://java.sun.com/j2se/1.4.2/docs/guide/serialization/spec/serial-arch.html#wp5253>.”
Therefore, the fields for a |Serializable| class can change in a later release, as long as it maintains the mapping back to its Serializable fields that must remain
compatible across release boundaries."

However I cam across an RMI's documentation which says serialPersistentFields should
only be used for writing objects and not reading them.

So ?

Cheers,
Guilhem.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]