Java JPA2:我使用JoinColumn作为queryparam来创建查询,但出现了异常,为什么

Java JPA2:我使用JoinColumn作为queryparam来创建查询,但出现了异常,为什么,java,jpa,ejb,jpa-2.0,Java,Jpa,Ejb,Jpa 2.0,此代码来自实体bean 我使用want\u uid作为queryparam编写了一个查询。如下所示: @JoinColumn(name = "want_uid", referencedColumnName = "id") @ManyToOne private BookUsers wantUid; @JoinColumn(name = "sale_uid", referencedColumnName = "id") @ManyToOne privat

此代码来自实体bean 我使用want\u uid作为queryparam编写了一个查询。如下所示:

    @JoinColumn(name = "want_uid", referencedColumnName = "id")
    @ManyToOne
    private BookUsers wantUid;
    @JoinColumn(name = "sale_uid", referencedColumnName = "id")
    @ManyToOne
    private BookUsers saleUid;
    @JoinColumn(name = "book_id", referencedColumnName = "id")
发生异常:

 BookUsers bookUsers=userDA.findUserByID(wantID);
 Query query= em.createQuery("SELECT b FROM BookOrder b WHERE b.want_uid = :want_uid");
 query.setParameter("want_uid", bookUsers);
我找不到原因。。。 你能告诉我吗? 在查询中感谢

javax.servlet.ServletException: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Error compiling the query [SELECT b FROM BookOrder b WHERE b.want_uid = :want_uid], line 1, column 34: unknown state or association field [want_uid] of class [com.xbook.entities.BookOrder].
需要改成

b.want_uid
所以


哇…谢谢!问题很奇怪…JoinColumn的名称是want\u uid..为什么不是queryparam?您是否尝试过使用
query.setParameter(“want\u uid”,bookUsers.getId())
b.wantUid
SELECT b FROM BookOrder b WHERE b.wantUid = :want_uid