Query q = em.createQuery("SELECT u FROM SSUser u WHERE u.emailId=?1")
.setParameter(1, email);
我认为这是一个有效的查询,但后来我得到了:
No results for query: SELECT FROM SSUser u WHERE u.emailId=?1
表达此查询的正确方法是什么?
答案 0 :(得分:1)
此查询是正确的,但GAE / J中的位置参数目前已被破坏。这是问题128:位置参数不起作用(JPQL)。解决方法:使用命名参数。
Query q = em.createQuery("SELECT u FROM SSUser u WHERE u.emailId = :email")
.setParameter("email", email);