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

Version field returns null when explicity projected from a JOIN in SELECT clause

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.2.1, 2.3.0
    • 2.1.2, 2.2.1.1, 2.2.3, 2.3.0
    • query
    • None
    • Patch Available

    Description

      With these entities:

      @Entity
      public class Foo {
      private int id;
      private int version;
      @Id
      public int getId()

      { return id; }
      public void setId(int id) { this.id = id; }

      public void setVersion(int version) { this.version = version; }
      @Version
      public int getVersion() { return this.version; }
      }

      @Entity
      public class Bar{
      private int id;
      private Foo foo;
      @Id
      public int getId() { return id; }

      public void setId(int id)

      { this.id = id; }

      public void setFoo(Foo foo)

      { this.foo = foo; }

      @ManyToOne
      public Foo getFoo()

      { return foo; }

      }
      Insert a record for each associating foo with bar.

      Foo foo = new Foo();
      em.getTransaction().begin();
      em.persist(foo);
      Bar bar = new Bar();
      bar.setFoo(foo);
      em.persist(bar);
      em.getTransaction().commit();
      em.close();

      queries

      select bar.id as id, foo as foo from Bar bar join bar.foo foo
      The version field is available via foo.getVersion()

      select bar.id as id, foo.version as version from Bar bar join bar.foo foo
      version is always null.

      By enabling the jdbc debug I can see that the actual SQL being run is correct but the value is just not hydrated.

      Attachments

        1. OPENJPA-2343-2.2.1.x.patch
          8 kB
          howard kelsey

        Issue Links

          Activity

            People

              curtisr7 Richard G. Curtis
              hkelsey howard kelsey
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: