[
https://issues.apache.org/jira/browse/OPENJPA-386?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12595067#action_12595067
]
Thomas Sandor commented on OPENJPA-386:
---------------------------------------
Matthew,
We have the same problem (and situation for storing @Version). It's great that
I found this entry.
Here's a workaround that worked for me:
@MappedSuperclass
@IdClass(Object.class)
This way PCEnhancer will enhance the superclassed entities with their special
@IdClass().
However, normally it should work without this extra line (Hibernate does not
need that).
Please vote for this bug to be solved in the next release.
> org.apache.openjpa.meta.ClassMetaData.validateAppIdClass() does not take
> @MappedSuperclass into account
> -------------------------------------------------------------------------------------------------------
>
> Key: OPENJPA-386
> URL: https://issues.apache.org/jira/browse/OPENJPA-386
> Project: OpenJPA
> Issue Type: Bug
> Components: kernel
> Affects Versions: 0.9.7, 1.0.0
> Environment: BEA WebLogic 10.0 under Windows XP SP1
> Reporter: Matthew L. Schwickerath
>
> We have a @MappedSuperclass that is the base for all of our entity bean
> classes. This class contains the @Version (and @Column for the version
> field) that all of our entity beans use. But, in
> ClassMetaData.validateAppIdClass(), if an entity bean class has a superclass,
> and the entity bean has an @IdClass, it expects that superclass to have an
> @IdClass also. All of our entity beans have an @IdClass (even if they only
> have a single part key), but our @MappedSuperclass does not have an @IdClass.
> This scenario works under JBoss 4.2.0 and Sun AS 9, but produces a
> NullPointerException in OpenJPA at:
> if (_super != null) {
> // concrete superclass oids must match or be parent of ours
> ClassMetaData sup = getPCSuperclassMetaData();
> if (!sup.getObjectIdType().isAssignableFrom(_objectId)) // <---
> NullPointerException here
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.