[英]EJB Schedule automatic start on weblogic
我目前有一个EJB,它的@调度每5分钟运行一次,但是我只在初始化ejb之后运行。
问题是,是否可以使计时器在部署后开始运行,而不要等到对EJB的调用才能启动后才开始。
这是我的代码:
@Remote(ServiceRemote.class)
@Stateless(mappedName = "ejb/ServiceEJBSL")
public class ServiceBean implements ServiceRemote {
@Schedule(second="*", minute="*/5", hour="*", dayOfWeek="0-6")
public void autmaticTimer() throws Exception, RemoteException{
System.out.println("do something");
}
}
我在glasfish服务器中执行了此操作,但似乎无法以相同的方式工作。
提前致谢。
您将需要GlassFish v3。+,因为EJB 3.1中已添加了此功能。
部署包含以
@Schedule
或@Schedules
批注进行批注的方法的企业bean时,EJB容器会创建自动计时器。
@Schedule(minute="*/5", hour="*")
public void automaticTimer() throws Exception, RemoteException{
System.out.println("do something");
}
加成
尝试添加
@Schedule(minute="*/5", hour="*", persistent=false)
因为在keepstate
设置为true
持久计时器不会重新创建(如果已经存在)。
看到
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.