Uploaded image for project: 'OpenJPA'
  1. OpenJPA
  2. OPENJPA-1043

JPQL queries do not support queries on a MappedSuperclass


    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.2.1, 1.3.0, 2.0.0-M2
    • Fix Version/s: 2.0.0-M3
    • Component/s: jpa
    • Labels:


      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].

      @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


        1. openJPATestcase.zip
          12 kB
          Ravi P Palacherla

          Issue Links



              • Assignee:
                ppoddar@apache.org Pinaki Poddar
                techhusky Jeremy Bauer
              • Votes:
                0 Vote for this issue
                0 Start watching this issue


                • Created: