spring+quart后tomcat报错

来源:互联网 发布:淘宝退款率影响店铺吗 编辑:程序博客网 时间:2024/05/22 05:02

严重: A web application registered the JBDC driver [oracle.jdbc.driver.OracleDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
2011-11-1 16:13:07 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads

严重: A web application appears to have started a thread named [org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-1] but has failed to stop it. This is very likely to create a memory leak.


解决方案:

1、原因是Hibernate3.5.0已经包含Hibernate Annotation jar,错误在于我重新加入了Hibernate Annotation和ejb3-persistence等jar文件

2、可能当前用的tomcat 6.0.26把他换成tomcat 6.0.20,就解决了(tomcat 6.0.26和6.0.24都会出现上面的问题)

3、原因大概是说tomcat 6.025之后引入了一种内存泄露的检查机制,会把不能垃圾收集的对像做日志,但是说jdbc这个情况好像并不太适用于这种情况。一个办法是在tomcat的server.xml文件中把<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>这个监听给关了

4、原因是tomcat重新部署的时候产生的这个问题。因为重新部署的时候重新加载数据库驱动程序,所以导致整个问题发生,每次部署的时候后还是重新启动tomcat或者把数据库lib放在tomcat的lib里面,可以解决这个问题。

5、检查tomcat的lib里面有没有数据库的lib驱动,没有就要抛异常。

原创粉丝点击