可能是JDBC的问题吧,,,你的查询根本没有执行吧代码贴出来看看

解决方案 »

  1.   

    方法很简单,就是在action中调用方法(根据主键找到对应的数据)然后把对象传到页面显示出来
    action中的调用的方法如下:
    /**
     * 功能:根据主键找到相应的信息
     * @param autoId
     * @return
     */
    public UserInfo findUserInfoByAutoId(Long autoId)
    {

    String hql = "from UserInfo where autoId=:autoId";
    UserInfo userInfo = (UserInfo)session.createQuery(hql).setParameter("autoId", autoId).uniqueResult();
    return userInfo;
    }
      

  2.   

    报错异常如下:
    type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: could not execute query
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    com.bbpage.fileter.EncodingFilter.doFilter(EncodingFilter.java:22)
    root cause org.hibernate.exception.GenericJDBCException: could not execute query
    org.hibernate.exception.ErrorCodeConverter.handledNonSpecificException(ErrorCodeConverter.java:92)
    org.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:80)
    org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
    org.hibernate.loader.Loader.doList(Loader.java:1596)
    org.hibernate.loader.Loader.list(Loader.java:1577)
    org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:395)
    org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271)
    org.hibernate.impl.SessionImpl.list(SessionImpl.java:844)
    org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
    org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:603)
    com.bbpage.dao.UserInfoOperate.findUserInfoByAutoId(UserInfoOperate.java:315)
    com.bbpage.bo.UserInfoService.findUserInfoByAutoId(UserInfoService.java:98)
    org.apache.jsp.personalSetting.PersonSetup_jsp._jspService(org.apache.jsp.personalSetting.PersonSetup_jsp:88)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    com.bbpage.fileter.EncodingFilter.doFilter(EncodingFilter.java:22)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.12 logs.
      

  3.   

    hql语句那样写有时是会出问题的,想办法改成这种形式String hql = "from UserInfo where autoId= ?";
      

  4.   

    这个问题是你的hibernate配置文件的问题。
    解决方法如下:
    把applicationContext.xml文件(当然也许你是别的xml文件)
    里面的
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName">
      <value>net.sourceforge.jtds.jdbc.Driver</value>
    </property>
    </bean>......
    全部改成一条语句的形式,如下:
    </bean>
    <bean id="dataSource"
    class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="net.sourceforge.jtds.jdbc.Driver"/>

    <property name="url" value="jdbc:jtds:sqlserver://localhost:1433/FundTransaction"/>

    <property name="username" value="sa"/>
    </bean>改过之后重新部署,运行。
    成功..解释:
    这个问题一般是因为你的hibernate本身的问题,当它读取这些<bean>时,它会
    先查找父级的,然后才是子级的,但是有的时候读取子级可能会因为项目的原因,延迟或者是
    其他,导致读取不到子级的东西。所以connection无法建立,报了如此Exception所以你其他项目运行,大部分情况下是正常的。
    如果你怕还有这个问题出现,建议你可以把所有的项目的hibernate配置文件都改成一条显示.
      

  5.   

    驱动错了吧~ 应该是class12.jar
      

  6.   

    也可能是hbm.xml中的数据类型出了问题吧~~
    导致sql不能执行
      

  7.   

    我的不行啊,我的打datasource是配置在hibernate.cfg.xml里面的
    <property name="myeclipse.connection.profile">zui</property>
    <property name="connection.url">
    jdbc:sqlserver://localhost:1433;databaseName=epai
    </property>
    <property name="connection.username">naizui</property>
    <property name="connection.password">123</property>
    <property name="connection.driver_class">
    com.microsoft.sqlserver.jdbc.SQLServerDriver
    </property>
    <property name="dialect">
    org.hibernate.dialect.SQLServerDialect
    </property>我的也是这个错。。哎。。还没解决
      

  8.   

    我的不行啊,我的打datasource是配置在hibernate.cfg.xml里面的
    <property name="myeclipse.connection.profile">zui</property>
    <property name="connection.url">
    jdbc:sqlserver://localhost:1433;databaseName=epai
    </property>
    <property name="connection.username">naizui</property>
    <property name="connection.password">123</property>
    <property name="connection.driver_class">
    com.microsoft.sqlserver.jdbc.SQLServerDriver
    </property>
    <property name="dialect">
    org.hibernate.dialect.SQLServerDialect
    </property>我的也是这个错。。哎。。还没解决
      

  9.   

    我今天遇到这个问题,现在找出问题了:我在hibernate.cfg.xml中配置了
    <!-- <property name="jdbc.fetch_size">50</property> 一次读的数据库记录数 -->
    <!--    <property name="jdbc.batch_size">30</property> 设定对数据库进行批量删除 -->
    这两个,注释掉,重试就好了.不知道对你们有木有帮助!