Cannot close connection,finalizing with closed connection问题解决。
2008-09-19 05:41
597 查看
这个问题又搞了我一个通宵,呵呵,以下是一位老兄的解决方案,我试了没错,谢谢他 “我的智囊团”项目的小BUG |
http://www.zhinangtuan.net.cn/show/20081/20081311205269884.html |
声明:本文不是问题,只是我在运行“我的智囊团”项目时发现的一点小漏洞,与MLDN的同学们分享,希望大家积极讨论。 在运行此项目时发现经常会出现以下问题 forgot to call close() on your session? 严重时还会出现下面的异常: org.hibernate.exception.GenericJDBCException: could not execute query 原因是spring初始化了两次: 第一处在web.xml里 <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/classes/applicationContext.xml </param-value> </context-param> 第二处在struts-config.xml里 <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"> <set-property property="contextConfigLocation" value="/WEB-INF/classes/applicationContext.xml" /> </plug-in> 那么怎样才能只初始化一次呢? 删去一处,第一处是不能删的,删在会出现异常: org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/applicationContext.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/applicationContext.xml] java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/applicationContext.xml] 从此信息可以看出tomcat启动会加载一次,并且默认目录是在/WEB-INF/下。即使你删除了,也会初始化spring一次。 那么只能删除第2处了。确实,删除之后异常就不在出现了。保证了spring只初始化一次 ★★★ 问题补充 ★★★ (2008-1-6 20:17:11) 如果加上这个文件action-servlet.xml有一个解决方法! 1、把applicationContext.xml也放到/WEB-INF/下。 2、在第二处插件只加action-servlet.xml,代码如下: <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"> <set-property property="contextConfigLocation" value="/WEB-INF/action-servlet.xml" /> 另外,把applicationContext.xml也放到/WEB-INF/下,在web.xml文件里也可以这样写: org.springframework.web.context.ContextLoaderListener ★★★ 问题补充 ★★★ (2008-1-6 20:19:11) 过滤了,在发一遍! [listener] [listener-class] org.springframework.web.context.ContextLoaderListener [/listener-class] [/listener] ★★★ 问题补充 ★★★ (2008-1-6 20:22:26) 不过用 listener 我估计tomcat5.0不可以用 ★★★ 问题补充 ★★★ (2008-1-7 17:12:09) 看了上面补充,还有疑问,请试下面的方法: 目录结构,请看下面的图片 http://hi.baidu.com/java%5Forg/album/item/c06680faef9573d0b58f3127.html 配置文件需要下载: http://pickup.mofile.com/5707700987067459 ★★★ 问题补充 ★★★ (2008-1-8 11:46:12) 配置文件新的下载地址: http://pickup.mofile.com/7718233563555967 如果在不能下载,我也没有办法了! 请不要用以前的下载地址了 ★★★ 问题补充 ★★★ (2008-1-17 11:50:55) 感谢参与! 能下载就好! |
相关文章推荐
- java.lang.ClassCastException: com.sun.proxy.$Proxy0 cannot be cast to java.sql.Connection异常问题解决
- 解决自定义标题栏You cannot combine custom titles with other title features问题
- 使用Hibernate连接MySQL数据库发生closed.Connection问题的一种解决方法
- 【云计算】Docker build解决父镜像层级关系过多问题:Cannot create container with more than 127 parents
- CRS-0184: Cannot communicate with the CRS daemon.----一步步解决(OCR问题)
- Type mismatch: cannot convert from java.sql.Connection to com.sun.。。。问题的解决
- Connection cannot be null when 'hibernate.dialect' not set问题的解决
- java http 客户端使用TSLv1.2[解决Remote host closed connection during handshake的问题]
- java.lang.ClassCastException: com.sun.proxy.$Proxy0 cannot be cast to java.sql.Connection异常问题解决
- iTextSharp应用中关于“Cannot access a closed Stream”问题的解决办法(附带提供如何在页面中显示PDF的流)
- SVN:cannot map the project with svn provider问题的解决办法
- 使用Apache 的 FTP Client获取FTP服务器上的文件列表FTP response 421 received.Server closed connection问题的解决
- 解决 Docker Hadoop ssh "Connection to * closed".问题
- You cannot run the non-logged version of bulk copy in this database. Please check with the DBO. 问题的解决方法
- java.lang.ClassCastException: com.sun.proxy.$Proxy0 cannot be cast to java.sql.Connection异常问题解决
- SVN:cannot map the project with svn provider 问题解决
- 解决nginx到后端服务器Connection: close问题
- 解决ssh中的”Connection closed by 10.0.0.21“问题
- Android 8.0 解决OkHttp问题:A connection to xxx was leaked. Did you forget to close a response body?
- redhat 上zmq的安装问题cannot link with -luuid, install uuid-dev解决