Не могу связать сущности в Java

Рейтинг: 2Ответов: 1Опубликовано: 11.12.2014

org.hibernate.MappingException: Could not determine type for: ru.se.ed.domain.Client, at table: demand, for columns: [org.hibernate.mapping.Column(client)]

Demand.java

package ru.se.ed.domain;
import javax.persistence.*;
    @Entity
    @Table(name = "demand", schema = "public", catalog = "db_cred")
    public class Demand {

        @Id
        @Column(name = "id")
        private long id;
        public long getId() { return id; }
        public void setId(long id) {this.id = id;}

        @ManyToOne
        @JoinColumn(name = "client_id", nullable = false)
        private Client client;
        public Client getClient() { return client; }
        public void setClient(Client client) { this.client = client; }
    }

Client.java

package ru.se.ed.domain;

import javax.persistence.*;

@Entity
@Table(name = "client", schema = "public", catalog = "db_cred")
public class Client {

    @Id
    @Column(name = "id")
    private long id;
    public long getId() { return id;}
    public void setId(long id) {this.id = id;}

    @Basic
    @Column(name = "fname")
    private String fname;
    public String getFname() {return fname;}
    public void setFname(String fname) {this.fname = fname;}
}

Вроде ничего сложного, посмотрел примеры ... Данные из одной таблицы возвращаются нормально, но когда указываешь @ManyToOne с другой получаю ошибку.

Ответы

▲ 2

Посмотрите пример связи User и UserRole в тык этом примере. Так же рекомендуют все же ставить аннотации сущности на геттеры.