用mysql连接SSH,就是普通的login.jsp
但是运行时候出错,在浏览器中显示错误(如下)在console中却没有显示
HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException: could not execute query; nested exception is org.hibernate.exception.SQLGrammarException: could not execute query
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
root cause org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute query; nested exception is org.hibernate.exception.SQLGrammarException: could not execute query
org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:612)
org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:377)
org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:840)
org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:836)
com.pirate.hquest.dao.hibernate.UserDAO.findByProperty(UserDAO.java:41)
com.pirate.hquest.dao.hibernate.UserDAO.findUserByCode(UserDAO.java:26)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304)
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
$Proxy1.findUserByCode(Unknown Source)
com.pirate.hquest.business.spring.UserBusinessSpringImpl.findUserByCode(UserBusinessSpringImpl.java:18)
com.pirate.hquest.action.LoginAction.login(LoginAction.java:32)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:110)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
root cause 

解决方案 »

  1.   

    org.hibernate.exception.SQLGrammarException: could not execute query
    org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
    org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
    org.hibernate.loader.Loader.doList(Loader.java:2148)
    org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
    org.hibernate.loader.Loader.list(Loader.java:2024)
    org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375)
    org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:308)
    org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:153)
    org.hibernate.impl.SessionImpl.list(SessionImpl.java:1106)
    org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
    org.springframework.orm.hibernate3.HibernateTemplate$29.doInHibernate(HibernateTemplate.java:849)
    org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:372)
    org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:840)
    org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:836)
    com.pirate.hquest.dao.hibernate.UserDAO.findByProperty(UserDAO.java:41)
    com.pirate.hquest.dao.hibernate.UserDAO.findUserByCode(UserDAO.java:26)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    java.lang.reflect.Method.invoke(Unknown Source)
    org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304)
    org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    $Proxy1.findUserByCode(Unknown Source)
    com.pirate.hquest.business.spring.UserBusinessSpringImpl.findUserByCode(UserBusinessSpringImpl.java:18)
    com.pirate.hquest.action.LoginAction.login(LoginAction.java:32)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    java.lang.reflect.Method.invoke(Unknown Source)
    org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
    org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
    org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:110)
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.9 logs.
    --------------------------------------------------------------------------------Apache Tomcat/5.5.9请教怎么解决?
      

  2.   

    另附查询dao的类public class UserDAO extends BaseDAO implements IUserDAO {
    private static final Log log = LogFactory.getLog(UserDAO.class);
    //property constants
    public static final String NAME = "name";
    public static final String PASSWORD = "password";
    public static final String CODE = "code";
    public static final String SEX = "sex";
    public static final String QQ = "qq";
    public static final String EMAIL = "email";
    public static final String LOGIN_COUNT = "loginCount";
    public static final String TYPE = "type";
    public static final String LAST_LOGIN_TIME = "lastLoginTime";

        
    public User findUserByCode(String code) {
    List list = findByProperty(CODE,code);
    if(list != null && list.size() > 0){
    return (User)list.get(0);
    }
    return null;
    }

    public void update(User user){
    this.getHibernateTemplate().update(user);
    }

    public List findByProperty(String propertyName,Object value){
    log.debug("finding User instance by property:" + propertyName + ",value:" + value );
    try{
    String queryString = "from User as model where model." + propertyName + "=?";
    System.out.println(queryString);
    return getHibernateTemplate().find(queryString, value);
    }catch(RuntimeException re){
    log.error("finding User instance by property failed", re);
    throw re;
    }
    }}
      

  3.   

    断点调试,看下打印出的HQL语句对不对,要查询的字段在你的持久化类中是否设置OK....
      

  4.   

    $Proxy1.findUserByCode(Unknown Source)
    com.pirate.hquest.business.spring.UserBusinessSpringImpl.findUserByCode(UserBusinessSpringImpl.java:18)public User findUserByCode(String code) {
    List list = findByProperty(CODE,code);
    if(list != null && list.size() > 0){
    return (User)list.get(0);
    }
    return null;

    可能就是这一句了。至于具体是怎么错的,那你得自己找了。
    $Proxy1.findUserByCode(Unknown Source) ,可能是你的参数传错了。
    楼主再仔细调一下。