Перенаправление из фильтра в Java EE - PullRequest
0 голосов
/ 27 сентября 2011

Как отследить первый HTTP-запрос, когда сеанс будет инициализирован, и разрешить его из фильтра?

После инициализации этого сеанса «оно» всегда будет проходить через фильтр.

1 Ответ

0 голосов
/ 27 сентября 2011

Вы можете использовать атрибут сеанса в качестве логического флага:

    HttpSession sess = request.getSession();
    Object o = sess.getAttribute("FIRST_HIT");
    if (o == null) {
        //execute first hit stuff here
        sess.setAttribute("FIRST_HIT", "FIRST_HIT");
    }

Где 'запрос' ISA javax.servlet.ServletRequest

Это логика в стиле «выполнить только один раз за сеанс», так как мы храним логический флаг в объекте сеанса (или области сеанса)

...