발생문제
org.hibernate.loader.MultipleBagFetchException: cannot simultaneously fetch multiple bags: [entity.list_collection_a, entity.list_collection_b]
해당필드는 enum 타입의 목록을 가지는 필드였고, 프로젝트의 의존성 라이브러리 버전들을 업그레이드 하면서org.hibernate.loader.MultipleBagFetchException
이 발생했다.
업그레이드
org.hibernate:hibernate-entitymanager:5.1.0.Final
→org.hibernate:hibernate-entitymanager:5.2.4.Final
해결방법
이 문제를 해결하는 방법은 enum 타입 컬렉션 필드에 정의를 다음과 같이 변경했다.
@ElementCollection
는 기본적으로 LAZY
값을 가진다. 그러나 한단에 선언된@LazyCollection(LazyCollectionOption.FALSE)
을 통해서 EAGER
로 처리된다.@LazyCollection
는 컬렉션 타입에 대한 LAZY
여부를 결정하는 기능을 한다.
'Java > Framework & Libs' 카테고리의 다른 글
Thymeleaf 에서 스프링 환경변수 사용하기 (0) | 2016.12.07 |
---|---|
[web] HttpServletResponse.sendRedirect 호출시 주의사항 (0) | 2016.11.23 |
[spring] 어제의 삽질, ViewController 설정 때문에... (2) | 2016.09.13 |
untitled Preview java.lang.IllegalStateException: Cannot call sendRedirect() after the response has been committed (0) | 2016.09.11 |
20160806 Spring MVC 에서 엑셀다운로드 기능 구현하기 (0) | 2016.08.06 |