我在类“abstractClass”上定义了一个使用基类字段的命名查询。 该字段在基类上具有abstacrt getter,并且getter的实现在几个派生类上。
当eclipselink尝试编译此查询时,我有以下异常:
异常[EclipseLink-0](Eclipse Persistence Services - 2.4.1.v20121003-ad44345):org.eclipse.persistence.exceptions.JPQLException 异常描述:编译问题[从abstractClass c中选择c,其中c.flag = false,c.id以(1,2,3)顺序由c.id]。 状态字段路径“c.id”无法解析为有效类型。
我的课程和查询:
public abstract abstractBaseClass
{
private int id;
private boolean flag;
public abstract int getId();
public boolean getFlag(){return flag};
}
@NamedQuery(name="query",
query="select c from abstractClass c where c.flag = false and c.id in (1,2,3) order by c.id")
public abstract abstractClass extends abstractBaseClass
{
}
public concreteClass extends abstractClass
{
@Override
public int getId(){return 1;}
}
我使用了基类中的另一个字段 - flag,它没关系,所以我认为问题可能是抽象的getter。 知道我该如何使用它?
由于