javax.servlet.ServletException: could not execute query
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:545)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:486)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause org.hibernate.exception.SQLGrammarException: could not execute query
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:65)
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
org.hibernate.loader.Loader.doList(Loader.java:2150)
org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2026)
org.hibernate.loader.Loader.list(Loader.java:2021)
org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:369)
org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:296)
org.hibernate.impl.SessionImpl.list(SessionImpl.java:992)
org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
com.teachingonline.struts.action.DbOperate.getUser(DbOperate.java:28)
com.teachingonline.struts.action.LoginAction.execute(LoginAction.java:57)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)-----------------------------------------------
其中的原代码
Session session = SessionFactory.currentSession();
Login user = null;
Transaction tx = null;
try {
tx = session.beginTransaction();
// 创建查询对象
Query query = session.createQuery("from Login where teacherno=:userNo");
query.setParameter("userNo", userNo);//抱错??怎么回事?
List list = query.list();
if (!list.isEmpty())
user = (Login) list.get(0);
tx.commit();
} catch (HibernateException e) {
if (tx != null)
tx.rollback();
throw e;
}
session.close();
return user;