Luego de consultar con expertos en este tema, programadores de deferentes áreas y maestros hemos dado con la solución al problema y la dejamos plasmada en esta publicación.
Solución:
¿Qué tal usar la configuración de seguridad? Espero que debajo de la configuración: funcione.
applicationContext.xml
--namespace-> xmlns:security="http://www.springframework.org/schema/security"
web.xml
30
Y ellos, debe escribir el suyo propio porque success-handler-ref = “Logout” es un controlador personalizado para el cierre de sesión:
Cerrar sesión
@Componente
public class Logout extends SimpleUrlLogoutSuccessHandler
@Override
public void onLogoutSuccess(HttpServletRequest request, HttpServletResponse response,
Authentication authentication) throws IOException, ServletException
if (authentication != null)
// do something
setDefaultTargetUrl("/login");
super.onLogoutSuccess(request, response, authentication);
Puede ser spring-security, spring-mvc o servlet, el cierre de sesión automático no es posible sin una lógica perfecta del lado del cliente.
Considerando que la aplicación tendrá ambos tipos de solicitud
- AJAX y
- envío de formulario / recarga de página
El cierre de sesión automático necesita una lógica muy calculada. Presentando mi implementación de la funcionalidad de autologout con lo siguiente
Ventajas.
1. No se utiliza ninguna llamada / solicitud adicional para lograr esto. teniendo en cuenta el impacto en el rendimiento si hay más de 10.000 usuarios activos y llamadas adicionales para lograr el cierre de sesión automático.
2. Configuración de una línea usando etiqueta.
3. Funciona perfectamente incluso si el usuario abre varias pestañas o varias ventanas.
4. Te informa antes de los 30 segundos de la invalidación de la sesión, por lo que si llenaste el formulario y no lo enviaste, puedes mantener la sesión viva (extender la sesión con un clic). Por lo tanto, es menos probable que el usuario pierda datos no guardados.
Uso
1. Incluya un script de cierre de sesión automático en las páginas JSP requeridas como se indica a continuación.
....