Gracias Xerelo, admito mi error, ahora mis dudas aumentan mas. Supongamos que tengo la siguiente clase:
Código JAVA:
Ver originalpublic class Miclase(){
private ArrayList<Detalleclass> lista;
public Miclase(){
this.lista=new ArrayList<Detalleclass>();
}
public void setLista(ArrayList<Detalleclass> lista){
this.lista=lista;
}
return this.lista;
}
public void setCadena
(String cadena
){ this.cadena=cadena;
}
return this.cadena;
}
}
y este es parte de un Servlet:
Código JAVA:
Ver originalpublic void doPost(HttpServletRequest request, HttpServletResponse response)
HttpSession session = request.getSession(true);
Miclase clase =(Miclase)session.getAttribute("clase");
if (clase == null) {
clase = new Miclase();
session.setAttribute("clase",clase);
}
ArrayList<Detalleclass> array =((Miclase)session.getAttribute("clase")).getLista();
Detalleclass detBean=new Detalleclass();
detBean.setAlmacen(request.getParameter("almacen"));
detBean.setDescripcion(request.getParameter("descripcion"));
array.add(depBean);
clase.setCadena("Una cadena");
clase.setLista(array);
//session.setAttribute("clase",clase);
}
Si le quito esto:
clase.setLista(array); la sesiones funcionan perfecto! Pero si no le quito aparece el mismo detalle(los mismos registros del array) en ambos navegadores, en los que hago las pruebas, en otras palabras no me funciona. Por que ocurre esto?
Por otro lado
clase.setCadena("Una cadena"); funciona bien si le agrego esto:
session.setAttribute("clase",clase); al final, pero deja de funcionar el array en las sesiones.
Me esta volviendo loco esto. Si algo no se entiende me lo hacen saber. Algo estaré haciendo mal?
Gracias a todos.