#java #hibernate
Столкнулся с тем, что при редактировании одной из строк, мне при запросе возвращаются старые данные. Как в последствии выяснилось, он банально грузит его заново из кэша 1го уровня. Стал перед нужными запросам сбрасывать его с помощью: session.clear(); Но теперь возникает проблема при нескольких обновлениях одного и того же объекта: org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: Подсобите, может надо по другому решать эту проблему?
Ответы
Ответ 1
Пришлось порыться... Суть в том что после .clear() ошибка срабатывает только при команде .update() или .saveOrUpdate(). Решение я нашел тут. Если коротко то эту команду надо заменить на .merge(Object o)
Комментариев нет:
Отправить комментарий