struts+hibernate+tomcat运行一段时候后报java.sql.SQLException: Closed Connection

hwyz_leo 2006-11-20 04:54:17
一开始正常
但tomcat运行一段时候后就会报

java.sql.SQLException: Closed Connection

查看日志文件,该错误是出现在

catalina.out

而不是

localhost_log.2006-11-20.txt

重起tomcat后恢复正常,自己猜测可能是hibernate的问题,但又不知道具体问题出在哪,该怎么解决,希望经历过或知道的朋友能给予帮助.

具体错误代码是

Caused by: java.sql.SQLException: Closed Connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:207)
at oracle.jdbc.driver.PhysicalConnection.rollback(PhysicalConnection.java:1132)
at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:134)
... 74 more
...全文
679 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
javalwd 2006-12-02
  • 打赏
  • 举报
回复
希望大家共同学习.....
欢迎高手加入!!!!!!!!!!!!!QQ群:
唯爱J2EE(java开发):14402276
唯爱J2EE(二群):15472518

********************不要重复加入,谢谢**************************
此群只加J2EE方面的人才与高手...或搞JAVA 1年以上的.....其他人不加........

加群时,,注明:J2EE方面的技术体系,,,如:Struts,Spring,Hibenate,EJB,Oracle,Weblogic等有关技术,方能通过....
hwyz_leo 2006-11-29
  • 打赏
  • 举报
回复
to all:
我现在的情况是无论dao中关闭session或者不关闭session
openSessionInView用还是不用
用DTO传递,不用DTO
都会报这个错
to pcdlll:
hibernate自带的连接池一定会这样吗?从症状上觉得你说的可能性最大
我在配置文件里并没有设置连接池相关的参数,这也会启动hibernate的连接池吗?
今天尝试使用别的连接池,却报hbm重复加载,是否配置文件写的不对?

这个问题困扰了好几天,真是郁闷啊!

leckylee 2006-11-27
  • 打赏
  • 举报
回复
你的数据库?是否过段时间无操作就自动关闭连接?
hero_qx 2006-11-27
  • 打赏
  • 举报
回复
猜想一下,你是否用了return resultSet之类的方法,然后又在关闭了conn以后再在其它地方调用到这个resultSet了?
yanhongaiwo 2006-11-27
  • 打赏
  • 举报
回复
如果是那样的话,比较耗资源,而且还会出现你那种情况,最好是把数据添加到集合里再返回去
yanhongaiwo 2006-11-27
  • 打赏
  • 举报
回复
你取数据的时候是不是直接把结果集返回去的?
pcdll 2006-11-27
  • 打赏
  • 举报
回复
请不要使用hibernate自带的连接池.自带的连接池会一直保持一个连接状态,当达到数据库的最大超时时间,就会这样(比如mysql默认设置为8小时)
hwyz_leo 2006-11-21
  • 打赏
  • 举报
回复
在那里设置session超时时间?
e3002 2006-11-21
  • 打赏
  • 举报
回复
设置以下session的超时时间试以下
canuoni 2006-11-20
  • 打赏
  • 举报
回复
session的关闭

67,549

社区成员

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

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