1

Glassfishにアプリケーションをデプロイしようとすると、次のエラーが発生しました。どうやら私の関係に何か間違っていることがあります。

デプロイしようとしたときのGlassfishサーバーからのエラー:

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

'Treatment'クラスファイルの多対1の関係:

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

'Provider'クラスファイルの1対多の関係:

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

私の注釈は正しいと思いますが、何かがおかしいです。これを修正する方法についての提案をいただければ幸いです。

4

1 に答える 1

1

治療エンティティの変更で、次のことを試してください

private long providerId;

private Provider provider;

プロバイダエンティティの変更

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

@OneToMany(mappedBy = "provider", targetEntity=Treatment.class)
于 2013-03-07T04:36:23.490 に答える