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

org.apache.openjpa.meta.ClassMetaData.validateAppIdClass() does not take @MappedSuperclass into account


    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.9.7, 1.0.0, 1.0.2, 1.1.0, 1.2.1
    • Fix Version/s: 1.2.0, 1.3.0, 2.0.0-M3
    • Component/s: kernel
    • Labels:
    • Environment:
      BEA WebLogic 10.0 under Windows XP SP1
    • Patch Info:
      Patch Available


      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


        1. OPENJPA-386_1.0.x.patch
          11 kB
          Jody Grassel
        2. OPENJPA-386_1.1.x.patch
          12 kB
          Jody Grassel
        3. OPENJPA-386_1.2.x.patch
          9 kB
          Jody Grassel
        4. OPENJPA-386_1.3.x.patch
          9 kB
          Jody Grassel
        5. OPENJPA-386_trunk.patch
          9 kB
          Jody Grassel



            • Assignee:
              fyrewyld Jody Grassel
              mschwickerath@ultramain.com Matthew L. Schwickerath
            • Votes:
              3 Vote for this issue
              3 Start watching this issue


              • Created: