Java org.hibernate.ObjectNotFoundException问题与使用列表()有关

Java org.hibernate.ObjectNotFoundException问题与使用列表()有关,java,hibernate,jakarta-ee,Java,Hibernate,Jakarta Ee,以下查询引发异常: Query query = session.createQuery("from Associate as a order by a.username asc"); associates = query.list(); org.hibernate.ObjectNotFoundException:不存在具有给定标识符的行:[ca.mypkg.model.Associate#0] 如果我在数据库中创建一个id为0的条目,它就可以正常工作。我没有真正理解它,因为我只是尝试加载数

以下查询引发异常:

 Query query = session.createQuery("from Associate as a order by a.username asc");
 associates = query.list();
org.hibernate.ObjectNotFoundException:不存在具有给定标识符的行:[ca.mypkg.model.Associate#0]

如果我在数据库中创建一个id为
0
的条目,它就可以正常工作。我没有真正理解它,因为我只是尝试加载数据库中的所有条目,而不仅仅是一个特定的条目

我发现类似的问题与尝试加载具有给定
ID
的对象有关,我没有这样做

副班:

@Table(name = "user")
@XmlRootElement(name = "associate")
public class Associate implements Serializable {

private String username;
private String password;
private String firstName;
private String lastName;
private String userType;
private int id;
private String email;
private String isActive;
private Department dept;
private String lastUpdated;
private String associate_type;
// ...
@Id
@GeneratedValue
public int getId() {
    return id;
}

@OneToOne
@JoinColumn(name = "dept")
public Department getDept() {
    return dept;
}

根据我的经验,这种类型的错误消息通常意味着它找不到通过所述id连接的实体,也找不到查询中请求的实体(在您的情况下是关联)。
我猜Associate类包含一个具有基元类型主键的联接实体。

看起来
order by
子句有问题,请发布您的
Associate
实体。看起来您在Associate实体类中没有username属性。正如@Atropo提到的,请提供这个类。即使没有clauseYou完全正确的命令,也会引发相同的异常。在department表中,department manager用户id似乎设置为0,而用户表中不存在该id。这个例外有点误导。谢谢