У меня есть процесс, который обновляет дерево в базе данных, и при этом выполняет операции чтения для проверки дубликатов сущностей.
Я обнаружил, что попытка выполнить crit.uniqueResult () в середине этого процесса вызывает следующую ошибку:
org.hibernate.PropertyValueException:
свойство not-null ссылается на ноль или
переходное значение
Просматривая трассировку стека, я вижу, что uniqueResult () сбрасывает сессию, пытаясь выполнить обновления, которые еще не готовы для доступа к базе данных.
at org.hibernate.engine.Cascade.cascade(Cascade.java:153)
at org.hibernate.event.def.AbstractFlushingEventListener.cascadeOnFlush(AbstractFlushingEventListener.java:154)
at org.hibernate.event.def.AbstractFlushingEventListener.prepareEntityFlushes(AbstractFlushingEventListener.java:145)
at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:88)
at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:58)
at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:996)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1589)
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:306)
at org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:328)
at com.inversion.dal.BaseDAO.findUniqueByCriterion(BaseDAO.java:59)
Я что-то здесь неправильно настроил?
Любая помощь с благодарностью.
Marty