我在层次结构中有 3 个实体:
请求.java
@Entity
@Table(name="Request")
@Inheritance(strategy=InheritanceType.JOINED)
@DiscriminatorColumn(name="REQUEST_TYPE", discriminatorType=DiscriminatorType.INTEGER)
@NamedQuery(name="getRequestsById", query="select r from Request r where r.id=:id and r.status=100")
public abstract class Request implemenst Serializable {
...
}
MedicineRequest.java
@Entity
@Table(name="MED_REQUEST")
public abstract class MedicineRequest extends Request {
...
}
ExtendedMedicineRequest.java
@Entity
@Table(name="EXT_MED_REQUEST")
@DiscriminatorValue("1")
public class ExtendedMedicineRequest extends MedicineRequest {
...
}
在我尝试运行上述查询的地方,getRequestsById
我收到以下错误消息:
无法实例化对象 id 为“Request-RequestPK@c49aa166”的“Request”类型的抽象类;这可能表明该类的继承鉴别器配置不正确。
所有实体都在persistance.xml 中正确定义,鉴别器列的名称也是正确的。怎么回事??