Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/03/2009, 13:00
dablin
 
Fecha de Ingreso: enero-2009
Mensajes: 148
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: problemas con las sesiones

Antes de llamar al servlet hay una llamada AJAX que se hace desde una index.jsp

El servlet te crea un documento.xml que se procesará en un fichero.js

Necesito almacenar una lista lm con componentes de la página para usar si se refresca al pulsar F5 para que no se eliminen los cambios.

Entonces lo que hago es crearla la primera vez cuando es null y despues ya accedo a ella para recuperar dichos valores.

La cosa es que he estado probando y me he dado cuenta que cuando abro un navegador el ID de la sesion es diferente para cada uno de los navegadores pero se quedan restos de la lista lm es decir que cuando abro el otro navegador por primera vez esa lista no es nula por eso da problemas.

Habia probado de hacer sesion.isNew() pensando que cuando abriese el otro navegador daría true( como tienen diferentes ID de sesion) pero no da false.

entonces como quedan restos de la lista lm de la sesion del otro navegador cuando hago
lm = (List)sesion.getAttribute("lista");
se produce el error.

En resumen:

Abro el IE 1º y se carga todo ok refresco IE y ok

Pero si abro seguidamente el Mozilla entonces al hacer la comprobación lm==null sale que tiene elementos(de la sesion que tiene IE) y hace la llamada lm = (List)sesion.getAttribute("lista"); y se produce el error.

Me he explicado bien?

Mi pregunta era que comprobación tendría que hacer para que no salga el error.