Hibernate问题:首页启动服务可以正常执行数据库操作,隔好几分钟之后再操作就出错了!

bmcsy 2008-05-04 09:26:59
大概是连接断开了,换了很久没也没有找到解决办法,郁闷ing,希望有此经验的人士指点迷津.

出错信息如下:
root cause

org.hibernate.exception.JDBCConnectionException: could not execute query
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74)
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)
all.ResultPage.<init>(ResultPage.java:19)
all.DAO.getResultPage(DAO.java:69)
com.test.struts.action.ListUserAction.execute(ListUserAction.java:54)
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:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
all.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:103)


root cause

java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Connection reset
com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)
com.microsoft.jdbc.sqlserver.SQLServerImplStatement.getNextResultType(Unknown Source)
com.microsoft.jdbc.base.BaseStatement.commonTransitionToState(Unknown Source)
com.microsoft.jdbc.base.BaseStatement.postImplExecute(Unknown Source)
com.microsoft.jdbc.base.BasePreparedStatement.postImplExecute(Unknown Source)
com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown Source)
com.microsoft.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source)
com.microsoft.jdbc.base.BasePreparedStatement.executeQuery(Unknown Source)
com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:76)
org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:139)
org.hibernate.loader.Loader.getResultSet(Loader.java:1669)
org.hibernate.loader.Loader.doQuery(Loader.java:662)
org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
org.hibernate.loader.Loader.doList(Loader.java:2145)
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)
all.ResultPage.<init>(ResultPage.java:19)
all.DAO.getResultPage(DAO.java:69)
com.test.struts.action.ListUserAction.execute(ListUserAction.java:54)
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:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
all.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:103)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.16 logs.
...全文
101 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
nwsl 2008-05-05
  • 打赏
  • 举报
回复
单步
nwsl 2008-05-05
  • 打赏
  • 举报
回复
SetCharacterEncodingFilter文件的103行执行不下去。如果能用eclipse debug模式但不跟踪看看。
KingNE 2008-05-05
  • 打赏
  • 举报
回复
Connection reset
Sendler_Lee 2008-05-05
  • 打赏
  • 举报
回复
你是不是用的jdbc连接的啊,我用jdbc连接mysql的时候也出现了这个问题,刷新两次后就断了,后来我换成连接池了,问题就解决了,不知道什么问题。你换成连接池后看看行不行。
我那个项目是ssh做的.tomact6.0连接池和以前版本配置有区别。可以参考:http://www.java2000.net/viewthread.jsp?tid=4536
Ami121 2008-05-05
  • 打赏
  • 举报
回复
是不是LZ第一次操作session关闭链接后 第二次没有打开啊
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.16 logs.
看看你的日志信息吧 可能会找到原因
showtime520 2008-05-05
  • 打赏
  • 举报
回复
估计楼主是用了延时加载,但是Session的开与关没有控制好
skyqiang 2008-05-05
  • 打赏
  • 举报
回复
问题肯定是数据库没有连接上.
1.连接的地址错误..你仔细检查.
2.如果你用的是服务器上的数据库,你要打开看一下.数据库是否打的开.
3.你加载时用来懒加载.然后导致session关闭.

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧