Details
Description
This behavior is not consistent with java serialization, java serialization only calls readResolve() on superclass if visibility of this method is public or protected.
See: ObjectStreamClass.getInheritableMethod
As a result of this serialized classes may be replaced by superclass instances on deserialization.
Workaround: Implement readresolve() in all subclasses.
Activity

Field | Original Value | New Value |
---|---|---|
Resolution | Fixed [ 1 ] | |
Fix Version/s | 1.4.x Maintenance [ 19602 ] | |
Status | Open [ 1 ] | Resolved [ 5 ] |

Fix Version/s | 1.4.x Maintenance [ 19602 ] | |
Fix Version/s | 1.4.8 [ 20992 ] |

Status | Resolved [ 5 ] | Closed [ 6 ] |
Thanks for heads-up. Actually you found a bug present in XStream for more than 10 years