Version: JBoss EJB-3RC8
I have a simple class hierarchy that uses joined inheritance:
@Entity
@Inheritance(strategy=InheritanceType.JOINED)
public class MaterialMaster {
private String externalId;
}
@Entity
@PrimaryKeyJoinColumn(name="ID")
public class SparePartMaster extends MaterialMaster {
}
@Entity
public class RecallOrderLine {
@ManyToOne(fetch=FetchType.LAZY, optional=false)
private RecallOrder recallOrder;
@OneToOne(fetch=FetchType.LAZY, optional=false)
private MaterialMaster material;
}
SELECT r FROM RecallOrderLine r WHERE r.recallOrder=:recallOrder AND r.material =:material
SELECT r FROM RecallOrderLine r WHERE r.recallOrder=:recallOrder AND r.material.externalId =:matExtKey