gpt4 book ai didi

java - 非法访问 : this web application instance has been stopped already

转载 作者:可可西里 更新时间:2023-11-01 06:46:16 29 4
gpt4 key购买 nike

我正在使用 GWT 开发应用程序,Hibernate (XML based mapping), MySQL- Tomcat6.0。 IDE-Netbeans 6.9我在 Netbeans 中设置项目属性“保存时部署”选项。

当我的应用程序在服务器上运行很长时间时,我的应用程序时不时无法连接到数据库并抛出以下异常

最终的后续堆栈跟踪是由出于调试目的以及试图终止线程而抛出的错误引起的
这导致了非法访问,并且没有任何功能影响。

java.lang.IllegalStateException  
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1273)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)
at com.mysql.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:4273)
at com.mysql.jdbc.ConnectionImpl.close(ConnectionImpl.java:1444)
at org.hibernate.connection.DriverManagerConnectionProvider.close(DriverManagerConnectionProvider.java:152)
at org.hibernate.connection.DriverManagerConnectionProvider.finalize(DriverManagerConnectionProvider.java:142)
at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83)
at java.lang.ref.Finalizer.access$100(Finalizer.java:14)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160)

当我重新启动我的 tomcat 服务器时,我再次能够连接数据库。请告诉我如何获得无缝性能并在不重新启动 tomcat 的情况下完成工作。

最佳答案

您可能会打开越来越多的连接并且永远不会关闭它们,最终达到数据库配置的最大连接数。

找到打开连接的位置并确保关闭它们。如果您为每个请求打开一个连接但不关闭它,那么很容易找到和修复。或者,当您遇到错误时,您可能没有关闭连接 - 检查您的异常处理代码。

使用数据库连接时推荐的方法是使用 try finally 尽最大努力关闭数据库连接:

Connection con;
try {
con = ...; // open connection
// do work
catch (SQLException e) {
// do whatever
} finally {
if (con != null && !con.isClosed()) {
try {
con.close();
catch (SQLException e) {
// Don't throw from here or you'll lose any return/exception from above
log.error("Failed to close connection", e);
}
}
}

关于java - 非法访问 : this web application instance has been stopped already,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7147181/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com