| Changing Job to a @MappedSuperclass resolved the issue and does in fact appear to be the best way to represent our entities. However, the documentation I have read seems to indicate that we should be able to use @Entity on the Job class. Even the Hibernate user guide (http://docs.jboss.org/hibernate/orm/5.1/userguide/html_single/Hibernate_User_Guide.html) states: Both abstract and concrete classes can be entities. Entities may extend non-entity classes as well as entity classes, and non-entity classes may extend entity classes. I am still pretty new to JPA, so if this is in fact not a valid way to represent these entities then this issue can be closed. It would be nice if an exception could have been thrown to indicate that we have improperly annotated our entities. |