Having multiple level inheritance using @DiscriminatorColumn and @DiscriminatorValue, hibernate only references the correct table for the discriminator column when querying for leaf classes. Example:
Class A with discriminator column "dc" Class B extends A Class C extends A Class D extends B
When querying for class C and D it will correctly use A.dc in both queries. When querying for class B (from which D derives) it will use B.dc in the query, instead of A.dc. This leads to the database complaining that there is no "dc" column in table B.
Example query is attached, including stacktrace'd error.
|