JPA2: я использую JoinColumn как queryparam для создания запроса и возникла исключительная ситуация, почему - PullRequest
0 голосов
/ 02 ноября 2011
    @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")

этот код взят из сущностного компонента, и я пишу запрос, используя want_uid в качестве queryparam .as fllows:

 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].

я не смогчтобы найти причину ... вы можете сказать мне?Спасибо

1 Ответ

2 голосов
/ 02 ноября 2011

В запросе

b.want_uid

необходимо изменить на

b.wantUid

Итак,

SELECT b FROM BookOrder b WHERE b.wantUid = :want_uid
...