Мне нужно перенести приложение из Hibernate версии 4.3.8.Final на 5.4.2.Final. Проблема в том, что существуют ManyToMany-Relations, которые не имеют таблицы соединений, но сопоставлены с идентификатором в двух таблицах, которые не являются частью первичного ключа.
Отображение в Artikel-Entity:
@OneToMany(fetch = LAZY)
@JoinColumn(name = "SOME_ID", referencedColumnName = "SOME_ID", insertable = false, updatable = false)
private List<FilialeLager> filialeLager;
Отображение в FilialeLager-Entity:
@OneToMany(fetch = LAZY)
@JoinColumn(name = "SOME_ID", referencedColumnName = "SOME_ID")
private List<Artikel> artikel;
При таком отображении Hibernate генерирует ошибку "найденные общие ссылки на коллекцию".
Когда я делаю:
@ManyToMany(fetch = LAZY)
private List<FilialeLager> filialeLager;
Запрос, в котором используется API критериев, и filialeLager добавляется в критерии над записью в метамодели stati c. Я получаю ошибку: Неверное имя объекта 'ARTIKEL_FILIALE_LAGER'. И это, конечно, не объединит две сущности с SOME_ID.
Есть идеи, как мне это решить?