Ответ 1
Я обнаружил, что это вызвано дочерним сущностью, которая не определена в файле hibernate.cfg.xml. Сообщение об ошибке может быть улучшено.
Я пытаюсь использовать IntelliJ IDEA, и это предупреждает меня об ассоциации Hibernate, которую я не совсем понимаю.
Одна сторона:
@Entity
@Table(name = "MY_REQ_ASSIGNEE")
public class MyRequestAssignee extends BaseUser {
//...
@OneToMany(fetch = FetchType.EAGER, cascade = {CascadeType.ALL}, mappedBy = "myRequestAssignee")
private Collection<MyRequest> myRequests = new ArrayList<>();
//...
}
Много сторон:
@Entity
@Table(name = "MY_REQUEST")
public class MyRequest implements Persistable {
//...
@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name="ASSIGNEE_ID")
private MyRequestAssignee myRequestAssignee;
//...
}
(Persistable
- это просто интерфейс, обладающий свойством id
, чтобы убедиться, что Hibernate имеет к нему доступ.)
Я вижу тип MyRequestAssignee
, подчеркнутый красным, и сообщение читает 'Many To One' attribute type should not be 'Persistence Entity'.
. Что-то не так с моими отношениями?
Для проверки работоспособности я просмотрел этот пост и этот пост.
Я обнаружил, что это вызвано дочерним сущностью, которая не определена в файле hibernate.cfg.xml. Сообщение об ошибке может быть улучшено.
Этот вопрос немного устарел, но я просто хотел добавить, что это также может быть вызвано конфликтующим файлом сопоставления hibmate.hbm и аннотациями JPA. Я столкнулся с этим сообщением об ошибке при преобразовании старых файлов сопоставления в аннотации и забыл прокомментировать один из старых файлов сопоставления.