2012-02-21 4 views
6

У меня есть приложение весны, где я хочу заблокировать операцию вставки/удаления/обновления hibernate, если пользователь в httpSession является своего рода суперпользователем (где user.isSuper() возвращает true).Hibernate Interceptor/Listeners for HQL

Я реализовал прослушиватель для этих событий, но проблема в том, что слушатель не стреляет для запросов HQL (session.executeUpdate()).

Такая же проблема с перехватчиками.

Пожалуйста, помогите.

ответ

1

Попробуйте следующий код вместо session.executeUpdate(): -

getSessionFactory().getCurrentSession().setFlushMode(FlushMode.NEVER); 
    getSessionFactory().getCurrentSession().close()