2009-03-11 3 views
0

В последнее время я решил реализовать в своих проектах CMT транзакции (jBoss5, Hibernate, jta postgres datasource). Все работает нормально, кроме Hibernate.initialize() в моих сущностях. Он работает в компонентах EJB, но при попытке вызвать инициализацию в getter объекта я получаю исключение «не могу ассоциироваться с сеансом». Он очень хорошо работал перед выполнением транзакций. У кого-то была такая же проблема?HIbernate и CMT

ответ

0

Ok после нескольких дней, просматривающих интернет я нашел, что это проблема. Когда используется флаг u, который поддерживает транзакции. Он не запускает их. Если вы извлекаете объекты из транзакции, они не работают и, следовательно, u не могут инициализировать свои свойства ...

0

Со следующего reference page вам может понадобиться, чтобы обеспечить текущие свойства настроены правильно для CMT

  • набор hibernate.transaction.manager_lookup_class к стратегии поиска для вашего контейнера Java EE (см here для списка менеджеров транзакций JTA)
  • установить hibernate.transaction.factory_class в org.hibernate.transaction.CMTTransactionFactory
+0

Я написал, что все работает, кроме Hibernate.initialize(), и это только в сущности. Я уже установил hibernate.transaction.manager_lookup_class. (Я не хочу устанавливать фабрику транзакций, потому что диспетчер сущности Hibernate это не нравится). Кто-нибудь знает, в чем проблема? – Dogrizz

Смежные вопросы