[ https://issues.apache.org/jira/browse/OPENJPA-1704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Rick Curtis updated OPENJPA-1704: --------------------------------- Summary: PCEnhancer incorrectly generates readExternal (was: PCEnhancer incorrectly generates writes readExternal ) > PCEnhancer incorrectly generates readExternal > ---------------------------------------------- > > Key: OPENJPA-1704 > URL: https://issues.apache.org/jira/browse/OPENJPA-1704 > Project: OpenJPA > Issue Type: Bug > Components: kernel > Affects Versions: 1.2.2, 2.0.0, 2.1.0 > Reporter: Rick Curtis > Assignee: Rick Curtis > Fix For: 2.1.0 > > > OPENJPA-1400 introduced a bug that can be encountered when reading a streamed object under the following circumstances: > - Using a serializable DetachedStateManager () > - The Entity needs to have a version field AND either: > - If no inheritance, a 'proxyable' (ie: java.sql.Date, java.util.List) field with a name that is lexicographically after the version field. > - If using inheritance, a 'proxyable' (ie: java.sql.Date, java.util.List) field in a child class. > The bug could manifest itself in a number of ways. Below is the one I was able to reproduce. > java.lang.IllegalArgumentException > at org.apache.openjpa.persistence.inheritance.serializable.A.pcProvideField(A.java) > at org.apache.openjpa.kernel.DetachedStateManager.proxyDetachedDeserialized(DetachedStateManager.java:438) > at org.apache.openjpa.persistence.inheritance.serializable.A.readExternal(A.java) > at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1792) > at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1751) > at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) > at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) > at org.apache.openjpa.persistence.inheritance.serializable.TestSerialization.serializeObject(TestSerialization.java:105) > at org.apache.openjpa.persistence.inheritance.serializable.TestSerialization.testRoundTrip(TestSerialization.java:48) > ... -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.