javax.persistence.PersistenceException: org.hibernate.SessionException: сессия закрыта - PullRequest
0 голосов
/ 25 марта 2019

я получаю исключение

 StringBuilder queryBuilder = new StringBuilder(querystat);
    System.out.println("startDate--->" + startDate);
    Query query = 
  getEntityManager().createQuery(queryBuilder.toString());
    System.out.println("query.list();--->"
            + query.getResultList().size());
 return query.getResultList();

Кто-нибудь есть идеи по этому вопросу?

Ответы [ 2 ]

0 голосов
/ 25 марта 2019

Открытый метод, вызывающий код, должен быть аннотирован @ Transactional .

Далее, обработка @Transactional должна быть активирована.Это может быть или не быть уже активным.Его можно активировать с помощью @ EnableTransactionManagement .

Метод, помеченный @Transactional, не должен вызываться из того же класса.

0 голосов
/ 25 марта 2019

Спасибо за ответы. Я добавил в класс обслуживания транзакции шаблон, его рабочий код. Ниже приведен рабочий код.

return transactionTemplate
    .execute(new TransactionCallback<List<?>>() {
        public List<?> doInTransaction(
                TransactionStatus status) {
            return dao.monthReportQuery(startDate, endDate);
        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...