Para mapear uma única classe para duas (ou mais) tabelas separadas, você precisa usar um @SecondaryTable anotação:
@Table(name="ROOMS")
@SecondaryTable(name="TRAINERS", pkJoinColumns={
@PrimaryKeyJoinColumn(name="TRSC_OOC_UNIT_ID", referencedColumnName="OOC_UNIT_ID"),
@PrimaryKeyJoinColumn(name="TRSC_OOC_START_DT", referencedColumnName="OOC_START_DT"),
@PrimaryKeyJoinColumn(name="TRSC_OOC_START_TM", referencedColumnName="OOC_START_TM")
})
public class MyMergedEntity {
Você precisará anotar cada propriedade individual mapeada para
TRAINERS
tabela com @Column(table="TRAINERS")
para especificar a qual tabela ele pertence. Se você estiver usando mapeamentos XML, todas as opções acima podem ser feitas via participar
elemento. Dito isso, parece-me que suas duas tabelas são de natureza bastante diferente e não devem ser mapeadas para uma única classe (especialmente porque você disse que já mapeou
ROOMS
em outro lugar). Talvez você deva mapear seu treinador como ManyToOne associação em vez disso.