【发布时间】:2011-11-02 17:39:36
【问题描述】:
@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")
此代码来自实体 bean 我使用 want_uid 作为 queryparam 编写一个查询 .as 流:
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].
我找不到原因... 你能告诉我吗 ? 谢谢
【问题讨论】:
-
你试过
query.setParameter("want_uid", bookUsers.getId());吗?