Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/08/2008, 02:13
gipres
 
Fecha de Ingreso: julio-2008
Mensajes: 2
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Rellenar formulario al cargar JSP

mediante un servlet, al pulsar el boton llamas al servlet alumno (no directamente al JSP) y le pasas el id=5

<a href="nombre_servlet?id=5"/>

esto llamara al servlet nombre_servlet y le pasa un unico parametro ID (con valor 5) llama al metodo service del servlet. Aqui tu le tendras que indicar (en caso de que tenga varias funcionaes el servlet) a que funcion llama... para ello podrias haber indicado otro parametro "operacion"

<a href="nombre_servlet?operacion=alumno&id=5"/>

entonces en el service podrias tener esto:

string operacion = request.getParameter("operacion");
con

if (operacion.equalsIgnoreCase("alumno"))
{
this.funcion_sacar_datos_alumno(request,response);
}

con eso seleccionas la operacion alumno para llamar a la funcion (la cual recibe como parametros de tipo (request,response)):

Asignamos el ID a un objeto:

string ID = request.getParameter("id");

Luego en esa funcion si tienes declarada una clase alumno puedes:

alumno A = funcion_sacar_datos(id);

Si esa funcion sacar datos la tienes en otra clase debes declarar un objeto de la clase.

Clase C = new clase();

alumno A = C.funcion_sacar_datos(ID);

Y en esa funcion es donde realizaras la busqueda en la base de datos. Esa funcion debe ser de tipo alumno para retornarlo.

Siguiendo con la funcion funcion_sacar_datos_alumno para finalizar haces la introduccion de los datos obtenidos.

request.setAttribute(A,"alumnoID");
RequestDispatcher rd = sc.getRequestDispatcher("/ELJSP.jsp");
rd.forward(request,response);
---------

Luego en el JSP sacas los datos creando una instancia de alumno

<%alumno A = (alumno)request.getAttribute("alumnoID");%>

Y ya puedes sacar los datos utilizando los get de la clase alumno

<%=A.getNombre();%>
...

No se si te servira de algo, asi lo hice yo cuando me toco hacer una pagina en JSP, yo lo monte sobre Weblogic... pero weno, espero que te sirva de algo ;)

Saludos