Asignación de solicitudes globales de Spring MVC 3

Estoy intentando comprobar si los usuarios tienen una cookie almacenada en su navegador. Si lo hacen y la sesión no está configurada, llame a un servicio para iniciar sesión y configurar la sesión. Por lo tanto, el alcance del mapeo tiene que ser global porque los usuarios pueden marcar cualquier página y volver a ella más tarde.

Entonces estaba pensando en hacer un controlador global como ese

@RequestMapping("/*", method=REQUESTMETHOD.GET)
function(){login and set session if true}

.. Desafortunadamente, / * no parece funcionar con Spring MVC 3.

Por supuesto, siempre puedo hacer lo siguiente

--Dentro de mi header.jsp (este archivo se incluirá en todas las páginas)

<jsp:useBean id="link" class = "Test.CLASSNAME" />
<%=link.getMETHOD() %>

Sin embargo, esa solución no parece demasiado elegante.

Entonces, mis preguntas son

¿Hay alguna forma de hacer @RequestMapping con alcance global?

¿Existe una mejor manera de manejar mi situación usando Spring MVC 3?

Gracias :)

preguntado el 27 de agosto de 11 a las 18:08

1 Respuestas

Parece que necesitas un interceptor, no un controlador. Estos "atraviesan" las asignaciones de su controlador, lo que le permite aplicar la lógica a todas sus solicitudes.

Ver los documentos de Spring aquí y aquí para saber cómo escribirlos, hay que cablearlos.

Respondido 27 ago 11, 22:08

Muchas gracias :) He estado jugando con RequestMapping y comodines todo el día sin suerte porque era demasiado vago para jugar con Interceptor. ¡Funciona a las mil maravillas ahora con el uso del interceptor! - Infinity

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.