Ik heb geen goede reputatie om te reageren, dus ik zal hier mijn opmerkingen plaatsen:
Waarom staat het veld installationPK niet in instalation.class??Je moet @EmbeddedId
plaatsen in het veld installationPK in Installation.class.
Ik weet niet of het verschil maakt, maar zet joinCollums op het veld in BaseEntity
:
@OneToOne
@JoinColumns({
@JoinColumn(name = "site", referencedColumnName = "site"),
@JoinColumn(name = "structure", referencedColumnName = "structure")
})
private Installation installation;