2

だから私は定期的に起動するタスクを作成しようとしており、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 にアクセスできますか?

4

1 に答える 1

2

いいえ、これは不可能です。ロジックを ServletContextListener contextInitialized メソッドに移動し、必要に応じてシングルトンを呼び出して起動作業を行うことをお勧めします。

于 2014-03-24T15:18:28.200 に答える