У меня есть простая связь OneToMany между Task и TaskError.
Task отображает TaskErrors:
@OneToMany(cascade = CascadeType.ALL, mappedBy = "task", orphanRemoval = true)
private List<TaskError> taskErrorCollection;
TaskErrors следует удалять при удалении Task, следовательно, orphanRemoval.
TaskError подключен к Задаче:
@JoinColumn(name = "task_id", referencedColumnName = "id")
@ManyToOne(optional = false, cascade = CascadeType.ALL)
private Task task;
Список TaskErrors в Задаче не обновляется, когда я добавляю TaskError с этим кодом:
TaskError taskError;
// set all taskErrors vars
taskErrorDAO.create(taskError);
Так чтоВ базе данных есть строка для TaskError, а список TaskErrors в Task не заполняется.Очевидно, что когда я удаляю задачу, выдается ошибка: MySQLIntegrityConstraintViolationException: не удается удалить или обновить родительскую строку
Требуется ли мне лично заполнять список TaskError в Task?Есть ли способ, чтобы этот список автоматически заполнялся?Em.flush после taskErrorDAO.create (taskError) не помогает.
![relation](https://i.stack.imgur.com/79NLe.png)