Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Транзакции в J2EE / 5 сообщений из 5, страница 1 из 1
23.07.2012, 15:07:56
    #37889258
G.Collector
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в J2EE
Есть EJB3, которые используют EntityManager. Обработка транзакциями идет автоматически.

Есть отдельный поток, который вручную получает EntityManager. Если в нем поставить em.setFlushMode(FlushModeType.AUTO) (это изначально так), то он постоянно сваливается в RollbackException. Поставил FlushModeType.AUTO и делаю в ручную запуск и коммит транзакции. Работает.

Но после того как поток отрабатывает из основного WAR'а запускается update, который в EJB. И вот он валится со следующей ошибкой:

Возникла исключительная ситуация в операции синхронизации before_completion: <openjpa-1.2.3-SNAPSHOT-r422266:907835 nonfatal store error> org.apache.openjpa.persistence.OptimisticLockException: Обнаружены ошибки оптимистической блокировки при выгрузке в хранилище данных. Следующие объекты могли быть параллельно изменены в другой транзакции:
...
Рейтинг: 0 / 0
23.07.2012, 15:16:23
    #37889274
svenom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в J2EE
В чем вопрос заключается?
...
Рейтинг: 0 / 0
23.07.2012, 15:19:43
    #37889281
Lonely Morgan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в J2EE
svenomВ чем вопрос заключается?Почему не работает? )

У EJB есть свой EntityManager. Для своего потока я создаю свой отдельный EM. Почему они не могут работать параллельно?
...
Рейтинг: 0 / 0
23.07.2012, 15:28:22
    #37889299
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в J2EE
Lonely MorganДля своего потока я создаю свой отдельный EM.
Ошибка в "своём потоке". В JEE недолжно быть своих неуправляемых контейнером потоков. Зачем они вам, если вы их не умеете правильно готовить? Используйте средства контейнера - JMS, Timer.
...
Рейтинг: 0 / 0
23.07.2012, 15:53:34
    #37889350
svenom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в J2EE
Lonely MorganУ EJB есть свой EntityManager. Для своего потока я создаю свой отдельный EM. Почему они не могут работать параллельно?Почитайте про optimistic locking и pessimistic locking - все сразу станет на свои места.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Транзакции в J2EE / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]