java - Web 应用程序上的 Quartz - 调度程序不会停止

标签 java jakarta-ee weblogic quartz-scheduler

我有一个在 weblogic 上运行的 webapp,它在 ServletContextListener 上运行一个调度程序。

问题是调度程序会无限期地运行,所以即使我停止 web 应用程序或重新部署调度程序也会继续运行。

我应该能够在 contextDestroyed 上停止调度程序,但我没有实例。我看到有几个网站推荐使用这种方法来解决这个问题,但它们都有运行规定次数的调度程序。

最佳答案

Quartz 附带一个专门用于在应用程序启动和关闭时启动和停止调度程序的 servlet,只需将以下内容添加到您的 web.xml 中:

<servlet> 
  <servlet-name>QuartzInitializer</servlet-name> 
  <servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
</servlet>

关于java - Web 应用程序上的 Quartz - 调度程序不会停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6445427/

相关文章:

java - 添加工具栏时出现空指针异常

java - JdbcTemplate查询,是什么?

jakarta-ee - 如果两者都捆绑在 EAR 中,如何让 CDI 在 war 和 EJB 中运行

jakarta-ee - 将@Stateful或@Stateless注入(inject)@Singleton EJB

java - 如何告诉 IntelliJ 在构建 war 文件时为 Maven 使用文件夹 "web"而不是 "webapp"?

java - WebLogic 10.3 中的 Web 服务部署问题

java - 如何启用 Weblogic 12.1.2 JPA 2.1

Java 在每个结束 html 标记上对字符串进行子字符串化

JavaFx:自动调整 TitledPane 大小

java - weblogic 服务器中的 CXF Web 服务问题