나는 트리를 데이터베이스로 업데이트하는 프로세스를 가지고 있으며, 그렇게함으로써 중복 엔티티를 검사하기 위해 읽기를 수행한다. 스택 추적을 통해 파고Hibernate는 find-not-null이 아닌 에러로 flush를 호출한다.
이org.hibernate.PropertyValueException: not-null property references a null or transient value
, 나는에 uniqueResult()가 플러싱 것을 볼 : 나는 중간에이 과정을 통해)를 criteria.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)
내가 여기에 뭔가 잘못 설정 했습니까?
도움을 주시면 감사하겠습니다.
마티
불완전한 객체를 hibernate로 전달하는 것은 null 제약 조건 위반의 좋은 후보이다. 이미 세션에있는 항목의 수정과 관련하여 이러한 오류를 유발할 수있는 많은 코드 경로가 있으므로 항상 명확하지는 않다. 오류가 발생합니다. – Jherico