【发布时间】:2019-11-04 13:18:24
【问题描述】:
我的网络应用程序(Spring boot 5+、hbernate 5.4、JPA、Maven、JSP)。在 localhost 机器上(tomcat 9.0.17 & mysql v5.7.26)网站运行良好,可以在 register.jsp 页面注册新用户。
当我在远程服务器 (Tomcat 9) 上部署 war 文件时,网站运行良好,但当我使用表单注册新用户时,出现以下异常(尽管网站的其他页面一直正常显示) :
java.lang.IllegalStateException: Illegal access: this web
application instance has been stopped already. Could not load [].
The following stack trace is thrown for debugging purposes as
well as to attempt to terminate the thread which caused the
illegal access.
////.....
2019-06-20 12:43:47,237 [Catalina-utility-1] INFO
org.apache.catalina.startup.HostConfig- Deploying web application
archive [/home/proz/tomcat/webapps/proz.net/ROOT.war]
2019-06-20 12:43:59,099 [Catalina-utility-1] INFO
org.apache.catalina.core.ContainerBase.[Catalina].[proz.net].[/]-
2 Spring WebApplicationInitializers detected on classpath
2019-06-20 12:44:02,052 [Catalina-utility-1] INFO
org.apache.catalina.core.ContainerBase.[Catalina].[proz.net].[/]-
Initializing Spring embedded WebApplicationContext
2019-06-20 12:44:07,558 [Catalina-utility-1] INFO
org.apache.catalina.startup.HostConfig- Deployment of web
application archive [/home/proz/tomcat/webapps/proz.net/ROOT.war]
has finished in [20,321] ms
2019-06-20 12:44:22,702 [ajp-nio-127.0.0.1-9549-exec-57] INFO
org.apache.catalina.core.ContainerBase.[Catalina].[proz.net].[/]-
Initializing Spring DispatcherServlet 'dispatcherServlet'
在堆栈跟踪中,我注意到我的应用程序有 2 次部署,这显然是我获得非法访问权限的原因。
1- From dispatcher servlet ..I believe this SpringBootServletInitializer
2- From WebApplicationContext ...?
第二个网络初始化器从何而来?!!为什么这个异常没有出现在本地机器上?
【问题讨论】:
标签: spring-boot threadpool tomcat9