| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Hibernate & Spring |
| Автор: PovAnd 14.9.2007, 12:40 |
| Понимаю, тема Spring Hibernate org.hibernate.LazyInitializationException изъеженая дальше некуда и все равно спрашиваю: Какие варианты от этого избавиться, если я не хочу вручную открывать и закрывать hibernate session, а пользуюсь HibernateTemplate. Ну и так же я не хочу отказываться от ленивой инициализации (default-lazy="false"). Мне здесь написали : "При правильной работе с hibernate через spring заниматься открыванием и закрыванием сессии вручную не приходится, более того, это признак неудачного дизайна системы. В данном конкретном случае это точно не было навязано какой-то сильной необходимостью. Советую посмотреть в сторону транзакционного атрибута PROPAGATION_REQUIRED в spring." Если не в лом, помогите, что-нибудь увидеть в стороне атрибута PROPAGATION_REQUIRED |
| Автор: tux 14.9.2007, 14:10 |
| Можно использовать паттерн Open Session In View - http://www.hibernate.org/43.html. В Spring тоже есть его реализация - классы org.springframework.orm.hibernate.support.OpenSessionInViewFilter и org.springframework.orm.hibernate.support.OpenSessionInViewInterceptor. |
| Автор: PovAnd 14.9.2007, 14:19 |
| Да спасибо за помощь. Я еще раз перечитал http://www.jroller.com/kbaum/entry/orm_lazy_initialization_with_dao статью, попробовал использовать HibernateInterceptor и на данный момент LazyInitializationException не проявляет себя. |