Аннулирование предыдущей сессии при входе в систему: 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>
Спасибо..!!