Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/09/2012, 13:32
Avatar de chuidiang
chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 3 meses
Puntos: 454
Respuesta: JSP+Servlet+HTML

Hola:

En cualquier aplicación web con jsp y servlets tienes posibilidad de guardar variables de tipo application, de tipo session o de tipo page (se conoce como application scope, session scope y page scope).

Las de page scope son las variables normales que usas en tu jsp, son variables que sólo se ven desde el jsp y no guardan su valor de una llamada al jsp a otra.

las de session son variables que guardan su valor mientras un usuario concreto esté navegando por las páginas jsp de tu aplicación. Es un sitio típico donde guardar las cosas que compras en un carrito de la compra mientras el usuario navega de una página a otra para elegir los productos, o en tu caso, podrías guardar tu array. Eso sí, cada usuario tendría su propio array y vería elementos ditintos.

Las de application scope permanecen mientras tu servidor web está arrancado y son compartidas por todos los usuarios. Ahí podrías guardar tu array si quieres que todos los usuarios vean los mismos datos.

Desde un jsp puedes acceder a session sin más que nombrarlo, está definido por defecto. Ahí puedes meter lo que quieras y se mantendrá.

<% session.setAttribute("un nombre que quieras", tuArray);
tuArray = session.getAttribute("un nombre que quieras") %>

Idem con application, compartido por todos los usuarios

<% application.setAttribute("un nombre que quieras", tuArray);
tuArray = application.getAttribute("un nombre que quieras"); %>

El nombre que pasas como parametro sirve para poder meter varias cosas y luego distinguir unas de otras por su nombre.

Desde el Servlet, a partir del HttpRequest, puedes obtener la Session con httprequest.getSession() y al application se le llama ServletContext en el servlet, así que puedes obtnerlo con httprequest.getServletContext(). Así que la idea sería que tu servlet guardara el array en el httpRequest.getServletContext().addAttribute(...) y así estará diponible en el jsp.

Bueno, esta es la idea básica, suongo que tendrás que googlear un poco más.

Se bueno.
__________________
Apuntes Java
Wiki de Programación