У меня следующая структура таблицы:
parent(parentId)
child(childId, parentId fk)
Затем у меня есть следующие объекты:
@Entity
@Table(name = "parent")
public class Parent {
@Id
@GeneratedValue(...)
private String id;
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name = "parentId")
Set<Child> children
}
@Entity
@Table(name = "child")
public class Child {
@Id
@GeneratedValue(...)
private String id;
@Column(...)
private String parentId;
}
Теперь я создаю переходный родительский и дочерний элементы и добавляюпотомок к родителю, затем сохраните родителя:
Parent parent = new Parent();
parent.children.add(new Child());
parentDao.save(parent);
Получаю исключение:
org.hibernate.PropertyValueException: not-null property references a null or transient value
Мой вопрос: Как я могу получить parentId вДля дочернего класса будет автоматически установлено значение, сгенерированное вставкой родительского элемента?