Jerry -

Maybe you omitted something when you wrote your email... but does class B
have an @Entity annotation?

... I figured we could start with the obvious. :-)

Thanks,
Rick

On Thu, Nov 11, 2010 at 11:49 PM, Jerry Carter <[email protected]>wrote:

> 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