18
My project setting are Spring MVC, Hibernate 3.2.x, on MySQL DB
Getting the following error:
org.hibernate.QueryParameterException: could not locate named parameter email
Approach #1:
@Override
public Boolean isExist(String email) {
boolean flag = false;
String hql = "from com.cmgr.beans.UserAccount u where u.email = :email";
List<UserAccount> result = currentSession().createQuery(hql)
.setParameter("email", email)
.list();
UserAccount userAccount = (UserAccount)result.get(0);
if (userAccount!=null && userAccount.getEmail().equalsIgnoreCase(email)) {
flag = true;
}
return flag;
}
Approach #2:
@Override
public Boolean isExist(String email) {
boolean flag = false;
String hql = "from com.cmgr.beans.UserAccount u where u.email = :email";
List<UserAccount> result = currentSession().createQuery(hql).setString("email", email).list();
UserAccount userAccount = (UserAccount) result.get(0);
if (userAccount != null && userAccount.getEmail().equalsIgnoreCase(email)) {
flag = true;
}
return flag;
}
Error:
java.lang.IllegalArgumentException: Parameter email does not exist as a named parameter in [from com.cmgr.beans.UserAccount u where u.email = :email]
UserAccount class:
package com.cmgr.beans;
import java.io.Serializable;
import java.util.List;
import java.util.Set;
import javax.persistence.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
@Entity
@Table(name = "user_account")
public class UserAccount implements Serializable {
@Autowired
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY, generator = "user_account_seq")
@SequenceGenera