Я работаю над веб-приложением. Обычно в начале запроса (через код архитектуры) открывается сеанс Hibernate для работы с транзакциями БД. По окончании запроса сессия закрывается. Это прекрасно работает для всех наших транзакций, за исключением того, что в одном конкретном случае я хочу запустить поток из запроса. Этот поток будет вызывать транзакции БД.
Из потока я вызываю "sessionFactory.openSession ()", и в этом сеансе я выполняю свои транзакции. Проблема возникает в том, что когда запрос завершается, сам поток не обязательно завершается. Поэтому, когда запрос заканчивается, и поток пытается выполнить другую транзакцию БД, я получаю, что Hibernate Session закрыт! ошибка.
Есть ли в любом случае, что из моего потока я могу открыть "чистый" сеанс, не связанный с тем, который был открыт в начале запроса?