Я использую Hibernate с Spring и Hibernate возвращает эту ошибку:
Caused by: java.sql.BatchUpdateException: Column 'ID_TAREA_FK' cannot be null
У меня есть два класса
public class Tarea {
private List<Sesion> sesiones;
}
public class Sesion {
private Tarea tarea;
}
С их добытчиками и сеттерами. В своем коде я не забываю
t.getSesiones().add(s);
s.setTarea(t);
Таблицы базы данных:
TAREAS {ID_TAREA, ...}, SESIONES {ID_SESION, ID_TAREA_FK, ...}
Код кода в Tarea.hbm.xml для списка рассылки:
<bag name="sesiones" table="SESIONES" inverse="true" cascade="all">
<key column="ID_TAREA" not-null="true" />
<one-to-many class="com.jonasurbano.tareas.domain.sesiones.Sesion" />
</bag>
В Sesion.hbm.xml:
<many-to-one name="tarea" class="com.jonasurbano.tareas.domain.tareas.Tarea" not-null="true">
<column name="ID_TAREA_FK" />
</many-to-one>
Что я делаю неправильно? Я прочитал документацию по Hibernate и этот пост Проблема Hibernate One-Many , но она не работает для меня.
После решения этой проблемы я хотел бы знать, есть ли какой-нибудь способ избежать ссылки Tarea в классе Sesion, потому что я считаю это свойство избыточным.
Большое спасибо!