繁体   English   中英

EclipseLink ValidationException-非实体[class long]作为关系属性[field providerId]中的目标实体

[英]EclipseLink ValidationException - non-entity [class long] as target entity in the relationship attribute [field providerId]

尝试将应用程序部署到Glassfish时收到以下错误。 显然我的人际关系有问题。

尝试部署时,来自Glassfish服务器的错误:

        ValidationException Exception Description: [class edu...clinic.Treatment] 
uses a non-entity [class long] as target entity in the relationship attribute 
[field providerId]

我的“治疗”类文件中的多对一关系:

@Entiity
... 
@ManyToOne
    @JoinColumn(name = "provider_fk", referencedColumnName = "npi")
    private long providerId;

我的“提供者”类文件中的一对多关系:

 @Entity
    ...
@Id
    @Column(name = "NPI")
    private long npi;
...
    @OneToMany(mappedBy = "providerId", targetEntity=Treatment.class)
        @OrderBy
        private List<Treatment> treatments;

我相信我的注释是正确的,但是有些不对劲。 对于如何解决此问题,我将不胜感激。

请尝试以下操作,在“处理实体更改”中

private long providerId;

private Provider provider;

在提供者实体变更中

@OneToMany(mappedBy = "providerId", targetEntity=Treatment.class)

@OneToMany(mappedBy = "provider", targetEntity=Treatment.class)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM