클래스에 상속 구조가 있으며, 상위 클래스 (루트 클래스) 및 하위 클래스 (하위)로 가정 해 봅시다. JPA 2.0 : TYPE 표현식 예외
그래서 JPA 2.0에는 난 단지 부모의 항목과 아이의되지도 항목을 반환해야합니다SELECT p FROM Parent p WHERE TYPE(p) = Parent
이를 사용하여 단지 부모 클래스를 선택할 수 있습니다.
그러나 글래스 피시 v3에서 내 EclipseLink가 2.1.1와 MySQL과
, 나는 항상 다음과 같은 오류가 발생합니다 :"Invalid Type Expression on [my.domain.Parent]. The class
does not have a descriptor, or a descriptor that does not use
inheritance or uses a ClassExctractor for inheritance".
이 또한 내가 손으로 더 ORM 매핑을 정의하지 않습니다. 이것은 배포시 자동으로 수행됩니다.
상속 구조를 선언하기 위해 부모/자식 클래스 (주석)에 추가해야 할 것이 있습니까? (그러나 나는 그것이, 상속 자바 선언되어 있기 때문에이 필요하지한다고 생각?)
편집 :
내가 언급하지 않은 한 가지 중요한 측면은 내가 사용하고 있다는 것입니다 상속 방법 "TABLE_PER_CLASS".
이 링크는'를 사용하여 휴대용 상속 매핑 Strategies'하여 JPA 공급자가 수행하더라도 '그 주제에 언급했다 http://www.oracle.com/technetwork/articles/marx-jpa-087268.html 선택적 "테이블 당 구체 클래스"상속 매핑 전략을 구현하면 JPA 제공자 이식성이 필요한 경우이를 피하는 것이 가장 좋습니다 .' 그리고 단일 상속을 사용하는 것이 좋습니다. – Ramsharan