Аннулирование предыдущей сессии при входе в систему: JSF 2

У меня есть фильтр для вызова, который находит, после каждой страницы запрашивается, если пользователь и сессия привилегированы и действительны соответственно. Но я хочу сделать сеанс недействительным в начале, непосредственно перед входом в систему. Потому что, если кто-то не выходит из системы, он записывает этот сеанс, если он активен, при следующем входе в систему. Существует index.jsp, который перенаправляет на страницу после выполнения этой работы. но если страница входа в систему нажата непосредственно, то она захватывает предыдущую сессию.

LoginManagedBean.java

    public LoginManagedBean() {
    super(FacesContext.getCurrentInstance().getExternalContext());
    System.out.println(FacesContext.getCurrentInstance());
    System.out.println(FacesContext.getCurrentInstance()
            .getExternalContext());
    user = new UserBean();
}

index.jsp

request.getSession(false).invalidate();
String redirectPage = null;
redirectPage = request.getContextPath()+"/xhtml/login/loginHome.xhtml";

Другая проблема заключается в том, что, хотя у меня есть index.jsp в качестве файла приветствия, "loginHome.xhtml" по-прежнему открывается непосредственно после попадания в корневой контекст. То, когда недействительность сессии не происходит.

web.xml

    <welcome-file-list>
       <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

Спасибо..!!

0 ответов

Другие вопросы по тегам