2011-11-17 50 views
1

在EJB3计时器服务中,我可以使用timerService.createTimer(...)函数创建计时器,但问题是我可以在哪里使用它? 据我所知,我不能在Session Bean的生命周期函数中这样做,如@PostConstruct函数。我无法创建EJB3计时器服务的计时器?

我也读过它不能在有状态会话bean中调用? 还有什么我应该关注创建计时器吗?

回答

1

我想最重要的是要注意的是定时器是事务对象;这意味着,如果您在将回滚的事务中创建计时器,则计时器创建也会回滚。这也意味着它们必须在交易环境中被调用,并且在@PostConstruct中没有。

哦,正如你所知,你需要一个TimerService来创建一个计时器,所以你通常会在托管类中使用它,所以你可以注入它。