|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
||||||||||||||||
Spring mvc org.hibernate.LazyInitializationException: could not initialize proxy - no Session25.01.2017, 15:23. Показов 6606. Ответов 21
Метки spring mvc (Все метки)
Добрый день. Помогите исправить ошибку.
Проблема после AJAX запроса:
entity
0
|
||||||||||||||||
| 25.01.2017, 15:23 | |
|
Ответы с готовыми решениями:
21
Hibernate + could not initialize proxy - no Session Spring-mvc session Spring MVC + Hibernate |
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
||
| 25.01.2017, 15:25 [ТС] | ||
|
ошибка
0
|
||
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
| 25.01.2017, 22:23 | |
|
kostrorod, попробуйте навесить аннотацию @Transactional на saveProduct
0
|
|
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
|
| 25.01.2017, 22:50 [ТС] | |
|
Ошибка сохраняется
0
|
|
|
14 / 14 / 16
Регистрация: 02.03.2013
Сообщений: 27
|
|
| 25.01.2017, 22:51 | |
|
Покажите код методов:
productService.get(id) и productService.save(product), а также NamedEntity
0
|
|
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
||||||||||||||||
| 25.01.2017, 23:07 [ТС] | ||||||||||||||||
|
productService
Кликните здесь для просмотра всего текста
NamedEntity Кликните здесь для просмотра всего текста
Добавлено через 8 минут ExceptionUtil Кликните здесь для просмотра всего текста
0
|
||||||||||||||||
|
14 / 14 / 16
Регистрация: 02.03.2013
Сообщений: 27
|
|
| 25.01.2017, 23:14 | |
|
и ещё ProductRepository
0
|
|
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
||||||||||||||||
| 25.01.2017, 23:18 [ТС] | ||||||||||||||||
|
ProductRepository
Кликните здесь для просмотра всего текста
ProxyProductRepository Кликните здесь для просмотра всего текста
DataJpaProductRepositoryImpl Кликните здесь для просмотра всего текста
0
|
||||||||||||||||
|
14 / 14 / 16
Регистрация: 02.03.2013
Сообщений: 27
|
||
| 25.01.2017, 23:26 | ||
|
Попробуйте в ProxyProductRepository убрать
0
|
||
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
|
| 25.01.2017, 23:30 [ТС] | |
|
0
|
|
|
14 / 14 / 16
Регистрация: 02.03.2013
Сообщений: 27
|
||||||
| 25.01.2017, 23:38 | ||||||
|
а в конфигурации спринга есть что-то наподобие
0
|
||||||
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
|||||||||||
| 25.01.2017, 23:45 [ТС] | |||||||||||
0
|
|||||||||||
|
14 / 14 / 16
Регистрация: 02.03.2013
Сообщений: 27
|
||||||
| 26.01.2017, 00:10 | ||||||
|
Попробуйте убрать аннотацию @Transactional из Repository-классов и добавить её в ProductServiceImpl класс, а также создать метод в ProductService, в который поместить всю логику из метода saveProduct из класса AdminProductController, чтобы получилось что-то примерно такое
1
|
||||||
|
1563 / 1041 / 94
Регистрация: 17.04.2009
Сообщений: 2,995
|
||||||
| 26.01.2017, 01:00 | ||||||
Сообщение было отмечено kostrorod как решение
Решение
Ошибка тут судя по всему:
+ хорошая практика использовать @Transactional над реализацией сервисов, а не в интерфейсах или репозиториях, о чем писалось выше. Да и непонятно зачем лишний раз переписывать названия методов в ProxyProductRepository, когда они уже есть в JpaRepository.
1
|
||||||
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
|||||||
| 26.01.2017, 09:49 [ТС] | |||||||
|
После изменения метода на findOne всё заработало. ![]() А ведь в юзере метод findOne стоял. Я и думал, почему там все работает, а тут нет. Благодарю за разбор полётов. Несколько дней убил на эту ошибку. Добавлено через 15 минут Решил добить этом метод. Поднастроил транзакции. Добавил подхватывание транзакции если нет и заработало с методом getOne ProductService Кликните здесь для просмотра всего текста
0
|
|||||||
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
| 26.01.2017, 10:13 | |
|
kostrorod, зачем вам транзакции на простых методах?
0
|
|
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
||
| 26.01.2017, 11:03 [ТС] | ||
|
0
|
||
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
||||
| 26.01.2017, 11:05 | ||||
|
0
|
||||
|
39 / 28 / 8
Регистрация: 14.04.2012
Сообщений: 249
|
|
| 26.01.2017, 11:25 [ТС] | |
|
0
|
|
|
378 / 370 / 114
Регистрация: 30.06.2010
Сообщений: 1,445
|
|
| 26.01.2017, 11:49 | |
|
репозитории не должны открывать транзакции (кроме редких случаев), управление транзакциями должно осуществляться на уровне сервисов, а т.к. репозитории должны вызываться только из уровня сервисов, то они всегда будут в транзакции
0
|
|
| 26.01.2017, 11:49 | |
|
Помогаю со студенческими работами здесь
20
Spring MVC + Hibernate project
Session scoped бины в Spring при сохранении в Redis через Spring Session Трудности с выводом данных Spring MVC + Hibernate Spring MVC + Hibernate, java.lang.ClassNotFoundException Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|