0

当我的应用程序在 WebLogic 10.3.5 上启动时,我正在尝试启动 EJB TimerService 计时器

Timer 是一个 EJB。我尝试同时使用 ServletContextListener 和 ApplicationLifecycleListener。

使用 ServletContextListener 会导致:

Caused By: java.lang.NullPointerException
at weblogic.ejb.container.timer.ClusteredEJBTimerManager.createTimer(ClusteredEJBTimerManager.java:76)
at weblogic.ejb.container.timer.ClusteredEJBTimerManager.createTimer(ClusteredEJBTimerManager.java:95)

使用 ApplicationLifecycleListener 时,我什至无法查找 EJB。但是,如果我只是将它实例化为 POJO,我会得到一个 NPE:

java.lang.NullPointerException
at com.oracle.eas.announcements.deliveryengine.ejb.RecipientsPopulationTimerBean.createTimer(RecipientsPopulationTimerBean.java:77)
at com.oracle.eas.announcements.deliveryengine.listeners.AppStartStopListener.postStart(AppStartStopListener.java:48)

非常感谢有关如何创建使用 WebLogic 10.3.5 上的应用程序创建/删除的计时器的任何建议。

4

1 回答 1

0

Oracle 支持人员已确认由于服务器状态,这是不可能的。

事实证明我的方法是错误的,我不应该在每次启动时创建一个 TimerService,只需一次,然后用它来控制 Timers。

于 2013-02-28T13:02:22.640 回答