Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/08/2011, 01:17
Avatar de atapuerkasman
atapuerkasman
 
Fecha de Ingreso: febrero-2011
Mensajes: 76
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Problema con sesiones

Saludos!!! he cambiado en el servlet que inicia la sesion los metodos put por setAtribute, y además muestro que los datos se han guardado correctamente.

El problema es que cuando accedo con otro servlet hago getAtribute y me dice que toddos los atributos estan a null. El codigo, es muy parecido al de antes

Servlet inicio sesion

Código:
try {
				HttpSession sesion = request.getSession(true);//creamos una sesion, si ya la tiene creada la mantiene

				
				sesion.setAttribute("logueado", true);
				sesion.setAttribute("nombre", nombre);
				
				sesion.setMaxInactiveInterval(360); //Una hora sin cambios cierra la sesion
				
				System.out.println("Logueado: "+sesion.getAttribute("logueado")+" Nombre: "+sesion.getAttribute("nombre"));
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
				out.println("Error en la creacion de la sesion");
				
			}

Servlet que confirma sesión

Código:
		try {
			HttpSession sesion=request.getSession(true);
			Boolean logueado=(Boolean) sesion.getAttribute("logueado");
			String user=(String) sesion.getAttribute("nombre");
			
			System.out.println("logueado: "+logueado+" nombre:"+user);
			if((logueado==null) || (user==null)){
				System.out.println("Error, en la sesion");
				if(Controlador.DesactivarUsuario(nombre)){
					System.out.println("Error en la Sesion. se han guardado los datos de usuario para evitar errores.");
				}
				
				out.print("desconectar");
				return;
			}
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			System.out.println("error, la sesion no existe");
			e.printStackTrace();
			
		try {
			HttpSession sesion=request.getSession(true);
			Boolean logueado=(Boolean) sesion.getAttribute("logueado");
			String user=(String) sesion.getAttribute("nombre");
			
			System.out.println("logueado: "+logueado+" nombre:"+user);
			if((logueado==null) || (user==null)){
				System.out.println("Error, en la sesion");
				if(Controlador.DesactivarUsuario(nombre)){
					System.out.println("Error en la Sesion. se han guardado los datos de usuario para evitar errores.");
				}
				
				out.print("desconectar");
				return;
			}
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			System.out.println("error, la sesion no existe");
			e.printStackTrace();
                 }
¿aguien sabe de donde puede venir el error?? perdonar mis errores pero es la primera vez que trabajo con sesiones