Getter/Setter type inconsistency in Entity IdClass
--------------------------------------------------
Key: OPENJPA-257
URL: https://issues.apache.org/jira/browse/OPENJPA-257
Project: OpenJPA
Issue Type: Bug
Components: jpa
Affects Versions: 1.0.0
Reporter: Jonathan Feinberg
Priority: Critical
In this excerpt from ClassMetaData, we are seeking getter and setter in an
identity class. We should be seeking getter and setter with type of Entity
class's *key*, not type of Entity class per se. The getter code refers to "c",
which was earlier set to the correct object id field type. But the
setter-seeking code refers incorrectly to "fmds[i].getDeclaredType()". This is
a show-stopper, as it makes OpenJPA manual section 3.2 un-implementable.
if (m == null || !m.getReturnType().isAssignableFrom(c))
throw new MetaDataException(_loc.get("invalid-id",
_type, fmds[i].getName()));
m = Reflection.findSetter(oid, fmds[i].getName(),
fmds[i].getDeclaredType(), false);
if (m == null || m.getReturnType() != void.class)
throw new MetaDataException(_loc.get("invalid-id",
_type, fmds[i].getName()));
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.