开发企业 bean (EJB) 持久性计时器应用程序
EJB 持久性计时器由容器自动创建或由应用程序通过程序创建。两种类型的持久性计时器存储在数据库内的一些表中,此数据库是针对 server.xml 文件中的 EJB 计时器服务配置的。
关于此任务
创建持久性计时器后,它存在于数据库中直到发生下列其中一种情况:
- 未针对将来到期安排此计时器;例如,单一操作计时器到期并成功运行后。
- 此计时器被应用程序取消。
- 此计时器通过使用 EJB 计时器服务 MBean (EJBPersistentTimerServiceMXBean) 取消。
- 已从数据库中手动移除计时器。例如,如果计时器服务数据库已清除或移除。
而且,请注意 EJB 持久性计时器根据应用程序名称、模块名称和 bean 名称与 EJB 相关联。如果应用程序已更新,并且其中任何名称更改,那么计时器继续存在于数据库中,但显示为不再存在,因为它不再到期和运行。
Enterprise JavaBeans 规范声明,部署应用程序时由容器创建自动计时器。对于 Liberty,应用程序首次在服务器进程中启动时出现此情况。第一个应用程序启动期间,自动创建的持久性计时器存储在持久性计时器数据库中,并带有说明数据库已部署的指示。自动持久性计时器与说明应用程序已部署的指示从 EJB 持久性计时器数据库中移除之前,此容器不会再次创建自动持久性计时器。
过程
在 server.xml 文件中启用 EJB 持久性计时器功能部件;例如:
<featureManager>
<feature>ejbPersistentTimer-3.2</feature>
</featureManager>