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