I just used the new inheritance feature of EJB3 with the InheritanceType.SINGLE_TABLE strategy. There is a column for the type of the entity and each entity has a @DiscriminatorValue.
My entities are like: | @Entity | @DiscriminatorColumn(name = "INHERITANCETYPE", discriminatorType = DiscriminatorType.STRING) | @DiscriminatorValue("Partner") | public class Partner ... | | @Entity | @DiscriminatorValue("NaturalPerson") | public class NaturalPerson extends Partner ... | protected String attributeOnlyInNaturalPerson; | I have another entity with a relation to a Partner entity (1-n-relation, so that a collection of Partner is returned. If I call myEntity.getPartner():Collection<Partner>, I will get entites of type Partner. In the debugger, I can see that the attribute attributeOnlyInNaturalPerson is loaded from the database and instanciated to the object, BUT if I try to typecast the object to NaturalPerson, I get an ClassCastException. My current work around is to EntityManger.find(NaturalPerson.class, id) the entity again (this works) but I think this is a performance problem... Am I doing anything wrong with inheritance and relations, or is this really a bug? Best regards Carsten View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3969997#3969997 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3969997 _______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user