티스토리 뷰

 

 

org.hibernate.WrongClassException: Object with id: 1289153 was not of the specified subclass: XXXX (Discriminator: XXX)

 

 

* 개요

entity A가 있고, 이를 상속하는 B가 있음.

B를 선언시는 @DiscriminatorValue("XXX") 를 함께 선언해줘야 함.

 

저장되는건 A,B 모두 A의 테이블에 저장됨

 

B 클래스를 다른 패키지로 옮기고 나서 조회시 위의 오류가 발생함.

 

* 원인

검색해보니 A,B가 각기 다른 테이블을 사용하면서 ID 를 동일한 값을 가지는 경우 문제가 될 수 있다고 함.

그러나 나의 경우 아니었음 (둘다 A 테이블을 공유함)

 

* 해결

A 테이블 모든 값 지우고 시작하니 문제 없었음. ( 사실 해결책이 안되지..)

 

* 가설

- Project clean  이 제대로 되지 않아서 기존 개체와 충돌이 있었을 수도 있겠단 생각이 듦

- SessionFactory 선언 시 packagesToScan 에 옮긴 개체(B) 의 패키지 이름을 제대로 명시해줘야 하는데, 하지 않았거나 틀렸을 수도.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함