Saya tidak memiliki reputasi poin untuk berkomentar, jadi saya akan memasukkan komentar saya di sini:
Mengapa bidang instalationPK tidak ada di instalation.class??Anda harus meletakkan @EmbeddedId
di bidang installationPK di Installation.class.
Saya tidak melakukannya jika membuat perbedaan, tetapi letakkan joinCollums di bidang di BaseEntity
:
@OneToOne
@JoinColumns({
@JoinColumn(name = "site", referencedColumnName = "site"),
@JoinColumn(name = "structure", referencedColumnName = "structure")
})
private Installation installation;