Skift dette:
@OneToMany(mappedBy = "providertype")
private Set<HL7DocumentEntity> documententities;
Til dette:
@OneToMany(fetch = FetchType.LAZY)
@JoinTable(name = "Link_Documents", joinColumns = {@JoinColumn(name = "codePk", unique = true)}, inverseJoinColumns = {@JoinColumn(name = "change_this_with_primary_key_variable_name_from_HL7DocumentEntity")})
private Set<HL7DocumentEntity> documententities;
Og i HL7DocumentEntity ændres som følger:
Dette
@ManyToOne
@JoinColumns({ @JoinColumn(name = "ptcode", referencedColumnName = "code"),
@JoinColumn(name = "ptcodesystem", referencedColumnName = "codesystem")
})
private HL7GeneralCode providertype;
Skift til dette:
@ManyToOne(fetch = FetchType.LAZY)
@JoinTable(name = "Link_Documents", joinColumns = {@JoinColumn(name = "change_this_with_primary_key_variable_name_from_HL7DocumentEntity")}, inverseJoinColumns = {@JoinColumn(name = "codePk")})
private HL7GeneralCode providertype;
Jeg tror, du skal ændre "change_this_with_primary_key_variable_name_from_HL7DocumentEntity" med "id", som det er i BaseEntity, men tag et kig på din sql-tabel, du vil se det korrekte navn der.
Jeg håber, du bemærker, hvordan jeg fortalte JPA at bruge den samme "Link_Documents"-tabel til at forbinde de 2 tabeller. Jeg tror, det er her din fejl er. Bare sørg for at ændre, hvor jeg fortalte dig med det korrekte variabelnavn, og jeg tror, det burde virke