Foros del Web » Programación para mayores de 30 ;) » Java »

Rellenar formulario al cargar JSP

Estas en el tema de Rellenar formulario al cargar JSP en el foro de Java en Foros del Web. Hola, Resulta que tengo una página con un enlace a un action determinado y lo que quiero hacer es cargar un jsp que tiene un ...
  #1 (permalink)  
Antiguo 07/08/2008, 20:29
 
Fecha de Ingreso: abril-2008
Mensajes: 87
Antigüedad: 16 años, 7 meses
Puntos: 0
Rellenar formulario al cargar JSP

Hola,

Resulta que tengo una página con un enlace a un action determinado y lo que quiero hacer es cargar un jsp que tiene un formulario y rellenar las cajas de texto.
<a href="datos_alumno.do?id=5".

Cuando yo le de al enlace quiero que me llame al jsp datos_alumno.jsp y me rellene el formulario con los datos del alumno con id=5, que los sacaré de bbdd.

Lo estoy utilizando con struts y no sé cómo realizar el proceso de carga de un formulario al lanzar el jsp.

Saludos!!!

Última edición por prosi; 08/08/2008 a las 02:56
  #2 (permalink)  
Antiguo 08/08/2008, 02:13
 
Fecha de Ingreso: julio-2008
Mensajes: 2
Antigüedad: 16 años, 3 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
  #3 (permalink)  
Antiguo 08/08/2008, 02:51
 
Fecha de Ingreso: abril-2008
Mensajes: 87
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Rellenar formulario al cargar JSP

Muchas gracias gipres.

Una cosilla: la linea request.setAttribute(A,"alumnoID"); no debería de ser así request.setAttribute("alumnoID",A);?

Tu solución está muy bien, pero es que estoy utilizando struts y entonces rompería la regla de MVC.

Saludos!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:03.