Можно ли сохранить новые объекты в прослушивателе @ Pre / PostPersist?

Я пытаюсь настроить свое приложение гибернации для сохранения нового объекта Уведомление каждый раз, когда создается объект Activity - на данный момент все, что я попробовали Уведомление просто не удается сохранить в автоматическом режиме (ошибок в журналах нет, но sql никогда не выполняется).

Может ли кто-нибудь подтвердить, что в прослушивателях pre / postPersist Hibernate можно даже сохранять дополнительные объекты?

Я прочитал в документации:

Метод обратного вызова не должен вызывать методы EntityManager или Query!

Но я прочитал несколько других обсуждений, которые, кажется, указывают на то, что это возможно.

Для справки, я попробовал два подхода:

  1. @PrePersist метод - установка отношения cascade.ALL между Activity и Notification , а также в Метод PrePersist просто создает новое Уведомление и связывает его с Активностью , создаваемой в надежде, что Уведомление будет сохраняться.

  2. Метод @PostPersist - использование @Configurable и ListenerClass, подключение к службе и создание новой сущности Notification , а затем явный вызов entityManger persist

Может кто-нибудь подтвердит, что то, что я пытаюсь сделать, возможно?

10
задан rhinds 26 December 2011 в 21:11
поделиться