Buenos días!!!
estoy utilizando Anotaciones en mi proyecto con Spring, y ahora mismo nose como manejar las sesiones de los usuarios. Antes utilizaba la clase HttpServletRequest y la clase HttpSession de la siguiente manera:
Código JAVA:
Ver originalprotected void doGet(HttpServletRequest request, HttpServletResponse response)
.
.
.
HttpSession sesionActual= request.getSession(true);
sesionActual.setAttribute("usuSesion", usuario.getNickUsuario());
sesionActual.setAttribute("nivelUsuario", usuario.getNivelUsuario());
.
.
.
y si quería acceder al valor de uno de los atributos lo hacía así:
Código JAVA:
Ver originalrequest.getSession().getAttribute("usuSesion");
Sin embargo ahora al utilizar anotaciones he leido que es hay un tipo de atributos @SessionAttributes que se mantienen durante toda la sesion hasta que se modifican o se eliminan por lo tanto estaba manejando las sesiones así:
Código JAVA:
Ver original@SessionAttributes({"usuSesion","nivelUsuario"})
@RequestMapping("loginServlet.htm")
public String loginServlet
(@RequestParam
("usuario") String nickUsuario, @RequestParam
("contras") String contrasUsuario, ModelMap modelo
) { try {
Usuario usuario = operaciones.buscarUsuario(nickUsuario, contrasUsuario);
if(usuario!=null){
modelo.addAttribute("usuSesion", usuario.getNickUsuario());
modelo.addAttribute("nivelUsuario", usuario.getNivelUsuario());
return index(modelo);
}
else{
modelo.addAttribute("mensaje", "USUARIO Y/O CONTRASEÑA INCORRECTOS");
return "/WEB-INF/jsp/mensaje.jsp";
}
Logger.getLogger(Controlador.class.getName()).log(Level.SEVERE, null, ex);
}
return index(modelo);
}
El problema está que si luego quiero obtener el valor de los SessionAttributes lo he intentado así pero no devuelve ningún valor y nose como hacerlo o si se puede hacer
Mi pregunta es.. usando anotaciones hay alguna forma especifica de manejar Sesiones de usuario? se pueden utilizar las clases HttpSession y HttpServletRequest, como debería hacerlo?
Se agradece cualquier sugerencia o alternativa, porque la verdad nose por donde tirar ahora mismo!!