java - Spring - 完全关闭 Web 应用程序

标签 java spring

我有一个 Web 应用程序,我试图通过在上下文中执行 close() 方法来关闭它:

((ConfigurableApplicationContext) appContext).close();

执行此操作后,应用程序似乎继续运行,运行状况页面产生以下异常:

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:978)

有没有办法通过 Spring 关闭整个系统,还是我应该求助于 System.exit()

如有任何帮助,我们将不胜感激!

最佳答案

请看看这些问题。他们和你在同一条线上: How to manage Tomcat via Java , Start / stop a web application from itself?

正如@chrylis 所建议的,我认为关闭服务器(如果它不是在嵌入式模式下运行)的最简单方法是使用运行时类。

关于java - Spring - 完全关闭 Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29069495/

相关文章:

java - 部署在heroku中的Spring Boot应用程序中的外部Jars

java - 测试JPA java.lang.ClassNotFoundException : play. db.jpa.JPABase

xml - 哪个优先级更高 : Spring annotation or xml configuration

java - Facebook 视频上传限制 - Spring 社会问题

java - 上传图片而不重定向 Spring MVC

java - 最终变量的 setter/getter

java - Webflux Mono - 继续运行直至完成

java - 打包测试以在 gradle 中执行

java - 将 HttpServletRequest 获取到 Spring ResponseEntityExceptionHandler 中

java - Java 时间戳的奇怪问题