JPQL queries do not support queries on a MappedSuperclass
---------------------------------------------------------
Key: OPENJPA-1043
URL: https://issues.apache.org/jira/browse/OPENJPA-1043
Project: OpenJPA
Issue Type: Bug
Components: jpa
Affects Versions: 1.2.1
Reporter: Jeremy Bauer
This issue was reported by Jim Weaver via a nabble user forum post[1]. The JPA
specification clearly states that queries upon a mapped superclass are not
permitted, but the OpenJPA documentation has a note saying that they are
supported[2].
Given:
@MappedSuperclass class A { }
@Entity class B extends A { }
@Entity class C extends A { }
I found that:
a) The em.find(A.class, id) operation does indeed allow the use of mapped
superclass. OpenJPA issues a select upon tables B and C looking for a matching
ID.
b) A JPQL query does not: SELECT a FROM A a fails with exception: (as
reported by Jim)
I receive error message "An error occurred while parsing the query filter
"SELECT a FROM A a". Error message: The name "A" is not a recognized
entity or identifier. Perhaps you meant B, which is a close match. Known
entity names: [B, C]"
I attempted the same test with the OpenJPA base 1.0 provider and it failed with
the same error so it doesn't look like this was ever supported via. JPQL.
If the decision is made not to provide this support in the near future, the
documentation should be updated to qualify that mapped superclass is only allow
on a find.
[1]
http://n2.nabble.com/Can%27t-query-against-a-MappedSuperclass-tp2665700p2665700.html
[2]
http://openjpa.apache.org/builds/latest/docs/manual/manual.html#jpa_overview_meta_embeddablesuper
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.