2017-11-20 15 views
0

PatientEntityとMonitoringEntityの間にoneToOne関係を作成したいが、このエラーがある:エンティティクラス[class ch.lestoises.monitopsy.medication.entity.MonitoringEntity]の属性[patient]のmappedBy値が[ monitoringCode]は所有エンティティクラス[class ch.lestoises.monitopsy.patient.entity.PatientEntity]に存在しません。所有エンティティクラスが@MappedSuperclassの場合、これは無効であり、属性は正しいサブクラスを参照する必要があります。これは私のコードです:OneToOne eclipseLink

@Entity 
@Table(name = "patient") 
@XmlRootElement 
@NamedQueries({ 
    @NamedQuery(name = "PatientEntity.findByNumber", query = "SELECT p FROM PatientEntity p WHERE p.patientNumber = :number"), 
    @NamedQuery(name = "PatientEntity.findAllPatient", query = "SELECT p FROM PatientEntity p ") 
}) 
public class PatientEntity implements Serializable { 

    private static final long serialVersionUID = 1L; 

    @Id 
    @GeneratedValue(strategy = GenerationType.IDENTITY) 
    @Column(name = "pk_patient") 
    private Integer pkPatient; 

    @NotNull 
    @Column(name = "name") 
    private String name; 

    @NotNull 
    @Column(name = "firstname") 
    private String firstname; 

    @OneToOne 
    @JoinColumn(name="pk_monitoring") 
    private transient MonitoringEntity monitoringCode; 
} the Monitoring class : @Entity 
public class MonitoringEntity { 

    @Id 
    @Column(name = "pk_monitoring") 
    private Integer pkMonitoring; 

    @OneToOne(mappedBy="monitoringCode") 
    private PatientEntity patient; 
} 

答えて

0

私はPatientEntity

のフィールドmonitoringCodeのための過渡と@JoinColumnを削除する必要があります