org.hibernate.LazyInitializationException: не удалось инициализировать прокси - нет сеанса при попытке инициализации - PullRequest
0 голосов
/ 24 октября 2019

У меня есть объект, который LAZY fetch называется Player. Я пытаюсь вручную инициализировать hibernate, но получаю эту ошибку, как будто пытаюсь использовать сущность Player до ее инициализации. Вот пример, в котором я получаю сообщение об ошибке в первой строке:

    if (!Hibernate.isInitialized(contest.getPlayer())) Hibernate.initialize(contest.getPlayer());
    playerName = contest.getPlayer().getName();

(обратите внимание, что выборка объекта EAGER для объекта Player не возможна, поскольку она вызывает слишком много проблем с задержкой)

1 Ответ

0 голосов
/ 24 октября 2019

Вы не можете использовать Hibernate.initialize () вне транзакции. Вы можете использовать Hibernate.initialize сразу после получения результата запроса (я имею в виду в той же транзакции) или, если вы хотите его инициализировать позже - напишите отдельный запрос для получения плеера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...