Гибернация: двунаправленный режим «один ко многим» с одним в качестве родителя

Я пытаюсь установить двунаправленную связь "один-ко-многим" с "одним" в качестве родителя

У меня есть родитель:

@Entity
public class VideoOnDemand {

   @OneToMany(cascade = CascadeType.ALL)
   @LazyCollection(LazyCollectionOption.FALSE)
   @JoinColumn(name = "video_id")
   private List cuePoints = new ArrayList();
}

и дочерний элемент:

@Entity
public class CuePoint {

   @ManyToOne(cascade=CascadeType.ALL)
   @JoinColumn(name = "video_id", insertable = false, updatable = false)
   private VideoOnDemand video;
}

Я использовал рекомендации из официальной документации Hibernate (2.2.5.3.1.1). Однако Hibernate, похоже, не понимает, что CuePoint является дочерним объектом, поэтому, когда я удаляю CuePoint, он удаляет VideoOnDemand вместе со всеми другими CuePoints.

Что я делаю неправильно и каков правильный путь?

5
задан weekens 9 July 2011 в 08:36
поделиться