因此,我尝试创建一个定期触发的任务,并且希望它从 ServletContext 中获取一些内容:
...
@Singleton
@Startup
public class InitTimers {
@Resource
private TimerService timerService;
@PostConstruct
public void initTimer() {
...
// I want ServletContext here, how do I?
ServletContext context = getServletContext();
...
}
@Timeout
public void timeout(Timer timer) {
...
}
}
EJB 3.1 @Startup @Singleton 可以访问 ServletContext 吗?
最佳答案
不,这是不可能的。我建议将逻辑移至 ServletContextListener contextInitialized 方法,然后根据需要调用单例来执行启动工作。
关于startup - 当编写startupbean(@Singleton @Startup @PostConstruct)时,我是否可以获取ServletContext?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22515883/