我需要在jboss(JEE6)中创建一个计时器/计划服务。问题是,它被部署为jboss模块。我知道以下代码如果部署为EJB即可工作
@Schedule(hour="*/1", persistent=false)
但是如果不进行其他部署则无法正常工作。在jboss模块中是否有任何建议或标准方法来创建和使用计时器?我想避免创建TimerTask的core-java方法。
创建jboss模块是为了以有效的方式在应用程序之间共享代码。有关更多信息,请参见此处。现在,由于模块未部署在EJB容器中;在这里无法使用EJB调度程序。在我们的案例中,可能的解决方案或解决方法是创建一个EJB,该EJB依赖于这些jboss模块,这些模块的方法将由调度程序调用。
例如,
@Singleton
@Startup
public class NotificationRecorderBean {
@Inject
private MyJbossModule myJbossModule;
@Schedule(hour="*/1", persistent=false)
public void execute() {
LOGGER.debug("Recording notification count");
myJbossModule.process();
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句