In OpenJPA 2.0.1, I define a native query which returns the base class for a 
group of inherited classes. 

        Query query = em.createNativeQuery("...", A.class);

The inherited classes are simple and have the form:

        @Entity
        @Inheritance(strategy=InheritanceType.JOINED)
        @DiscriminatorColumn(name="class_type", 
discriminatorType=DiscriminatorType.INTEGER)
        public abstract class A {
                // Defines an ID and at least one persistent field.
        }

        class B extends A implements Serializable {
                ...
                private String details;
                public String getDetails() { return details; }
                public void setDetails(String details) { this.details = 
details; }
                ...
        }

My expectation is that this query should return an instance of B with any new 
fields resolved automatically (i.e. details should be non-NULL).  Instead I am 
getting an instance of B but with only the fields defined by A being 
initialized!  Am I crazy or is something broken?

-=- Jerry

Reply via email to