Could you please elaborate what you mean by "properties with the same name, ..."? I don't quite understand what that has to do with what I wrote or how what I wrote is not compatible to that. How can e.g. subValue1 in SQL-terms ever result in a different type? Two distinct subtypes sharing the same column can't have different types. If Hibernate allows two distinct subtype to share the same column, which I hope it does not, then the case when construct might actually be required, but in all other cases you could just rely on the null values produced by the dbms through left joins. |