Я нашел несколько решений этой проблемы, введя в Google следующее:
"Сообщение об истечении сеанса Java"
Вот одно решение, скопированное из Интернета:
Создайте фильтр SessionTimeout.java и назначьте для фильтра шаблон /app/*.jsp в файле web.xml.Это приведет к тому, что мой фильтр будет вызываться при каждом запросе (т. Е. Когда пользователь нажимает кнопку через 30 минут).Исключите главную страницу (login / login.jsp) из этого фильтра, чтобы можно было установить новый сеанс.Код для фильтра очень прост:
public class SessionTimeout implements Filter{
RequestDispatcher rd = null;
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
throws IOException, ServletException{
HttpServletRequest req = (HttpServletRequest)request;
HttpSession session = req.getSession();
// New Session so forward to login.jsp
if (session.isNew()){
requestDispatcher = request.getRequestDispatcher("/login/login.jsp");
requestDispatcher.forward(request, response);
}
// Not a new session so continue to the requested resource
else{
filterChain.doFilter(request, response);
}
}
public void init(filterConfig arg) throws ServletException{}
public void destroy(){}
}