Kerstetter wrote:
Any thoughts on how to get around this problem? It seems that the nature of serialization has changed between these hibernate releases. I am pretty sure that my classes (outside of Hibernate) are backwards compatible, as I have unit tests that demonstrate this.
I think you need to brush up on the "
nature of serialization". Serialization and the serialVersionUID's enforce version control. You change the version of the class, of course you cannot deserialize an old version into the new version. It would be utter chaos! Dogs and cats sleeping together, mass hysteria and all that. ;)
In short, you're stuck with 3.0.3 for now unless you want to deserialize everything using 3.0.3 and then reserialize in 3.2.2 (which sounds like a huge PITA). Even better, never rely on serialization for anything other than remoting operations, unless 1) you have total control over the classes involved (including contained Serializable objects) and 2) never, ever, plan to change them.
Backwards compatibility (at a method/field level) has nothing to do with serialization/deserialization operations. S/D operation are more fundamental than that.