我有实体(不是MappedSuperclass)人(带有id,姓名,姓氏)。
我还有实体员工扩展人(具有其他属性,不重要)。
继承策略是单表。
现在我想创建一个这样的命名查询:
SELECT emp FROM Employee emp WHERE emp.name = ?1
在IDE中我得到:
状态字段路径emp.name无法解析为有效类型
我认为问题是该属性属于超类实体 到目前为止,除了使用TYPE运算符对Employee实例执行选择性查询之外,我还没有找到任何解决方案。
我想执行上面的查询。这可能吗?
我在使用EclipseLink / JPA 2.0
答案 0 :(得分:2)
您的JPQL似乎有效。你是否在运行时尝试过?它可能只是IDE的一个问题。
(包括您的代码)
答案 1 :(得分:1)
Person
必须为@MappedSuperclass
。
http://www.objectdb.com/api/java/jpa/MappedSuperclass
此外,您应该使用命名参数,例如:name
代替?
...