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

paso de parametros en jsp

Estas en el tema de paso de parametros en jsp en el foro de Java en Foros del Web. Hola Tengo una jsp que muestra un listado de gente, y al lado de cada persona hay tres botones, editar, borrar y ver detalles. ¿Como ...
  #1 (permalink)  
Antiguo 02/09/2008, 05:35
Avatar de morenita7722  
Fecha de Ingreso: enero-2007
Ubicación: aquí, ¿donde sino?
Mensajes: 261
Antigüedad: 17 años, 3 meses
Puntos: 1
paso de parametros en jsp

Hola
Tengo una jsp que muestra un listado de gente, y al lado de cada persona hay tres botones, editar, borrar y ver detalles. ¿Como hago para que edite borre y deje ver los detalles de la persona que pulso? Por ejemplo, cuando edito voy a otra jsp donde quiero que se carguen todos los datos que tiene hasta el momento la persona, pero siempre me carga la misma persona.
¿Alguien tiene algún ejemplo?
Saludos!!
  #2 (permalink)  
Antiguo 02/09/2008, 08:21
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: paso de parametros en jsp

Hola,

Tienes que crear una funcion con javascript y mandarle con el evento onClick() del boton el id del usuario, esto es por cada boton.

Ejemplo:

<input type="button" onClick="unaFuncion(5)" value="Borrar" />

Supongo que por ahi tienes un ciclo donde iteras a cada persona, pues pones el boton dentro del ciclo y le asignas al onClick() el id de la persona.

saludos!
  #3 (permalink)  
Antiguo 03/09/2008, 00:23
Avatar de morenita7722  
Fecha de Ingreso: enero-2007
Ubicación: aquí, ¿donde sino?
Mensajes: 261
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: paso de parametros en jsp

Hola Bunburyscom
Yo tengo un controlador que lee el valor del botón (borrar, editar o detalles) y en función de eso llamo al método correspondiente del servicio al que hace referencia el controlador (estoy utilizando spring).
Con javascript puedo hacer eso?
Saludos!!
  #4 (permalink)  
Antiguo 03/09/2008, 01:42
 
Fecha de Ingreso: septiembre-2008
Mensajes: 12
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: paso de parametros en jsp

A la función javaScript le pasas el id de esa persona, como te ha dicho Bunburyscom, y también lo que vas a hacer (borrar, editar...) Después lo que haces es llamar a la acción rollo:

document.elForm.action = "loquesea.do?accion(laaccion)=";
document.elForm.submit();

Y desde la acción ya, llamas al servicio que toque.

Saludos!
  #5 (permalink)  
Antiguo 03/09/2008, 02:27
Avatar de morenita7722  
Fecha de Ingreso: enero-2007
Ubicación: aquí, ¿donde sino?
Mensajes: 261
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: paso de parametros en jsp

Esta es la parte del formulario que hace referencia a lo que estamos tratando:

<c:forEach items="${alumnos.rows}" var="alumno">
${alumno.DNI}
${alumno.nombre}
<fmt:formatDate value="${alumno.fechaNacimiento}" type="date" dateStyle="short"/>
${alumno.edad}

<input type="submit" name="operacion" value="EDITAR" onclick="editar("${alumno.DNI}")" />
<input type="submit" name="operacion" value="BORRAR" onclick="borrar("${alumno.DNI}")"/>
<input type="submit" name="operacion" value="DETALLES" onclick="detalles("${alumno.DNI}")" />

<hr>
</c:forEach>

y estas son las funciones javascript:

<script language="Javascript">

function borrar(DNI){
document.form.action="alumnos.do?operacion='BORRAR '&DNI=DNI";
document.form.submit();
}


function detalles(DNI){
document.form.action="alumnos.do?operacion='DETALL ES'&DNI=DNI";
document.form.submit();
}


function editar(DNI){
document.form.action="alumnos.do?operacion='EDITAR '&DNI=DNI";
document.form.submit();
}
</script>

No funciona, cuando voy a borrar salta una excepción y pone:

GRAVE: Servlet.service() para servlet spring lanzó excepción
java.lang.IllegalArgumentException: id to load is required for loading
  #6 (permalink)  
Antiguo 03/09/2008, 03:27
 
Fecha de Ingreso: septiembre-2008
Mensajes: 12
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: paso de parametros en jsp

Créate la variable dni en el form:

y en la funcion javaScript pones algo así:

function loquesea(dni,op){

document.elForm.dni.value= dni;

if(op == "borrar"){
document.elForm.action = "loquesea.do?accion(borrar)=";
document.elForm.submit();
}
else if(op == "insertar"){
document.elForm.action = "loquesea.do?accion(insertar)=";
document.elForm.submit();
}
else if(op == "consultar"){
document.elForm.action = "loquesea.do?accion(consultar)=";
document.elForm.submit();
}

}

saludos!

Última edición por marcial; 03/09/2008 a las 03:44
  #7 (permalink)  
Antiguo 03/09/2008, 03:47
Avatar de morenita7722  
Fecha de Ingreso: enero-2007
Ubicación: aquí, ¿donde sino?
Mensajes: 261
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: paso de parametros en jsp

Marcial, lo solucioné de otra forma, dime si es correcto también o no se debe de hacer así

<c:forEach items="${alumnos.rows}" var="alumno">
${alumno.DNI}
${alumno.nombre}
<fmt:formatDate value="${alumno.fechaNacimiento}" type="date" dateStyle="short"/>
${alumno.edad}

<form name="modificaciones" method="post" action="alumnos.do">
<input type="hidden" name="DNI" value="${alumno.DNI}" />
<input type="submit" name="operacion" value="EDITAR" />
</form>

<form name="bajas" method="post" action="alumnos.do">
<input type="hidden" name="DNI" value="${alumno.DNI}" />
<input type="submit" name="operacion" value="BORRAR" onclick="return confirmar('¿Está seguro que desea eliminar el registro?')" />
</form>

<form name="detalles" method="post" action="alumnos.do">
<input type="hidden" name="DNI" value="${alumno.DNI}" />
<input type="submit" name="operacion" value="DETALLES" />
</form>

<hr>
</c:forEach>

Saludos!!
  #8 (permalink)  
Antiguo 03/09/2008, 04:09
 
Fecha de Ingreso: septiembre-2008
Mensajes: 12
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: paso de parametros en jsp

bien. Si te funciona p'alante no te compliques la vida :)

saludos!
  #9 (permalink)  
Antiguo 03/09/2008, 08:02
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: paso de parametros en jsp

O sea que creaste por cada alumno un <form ???

Bueno, si asi te funciona y no quieres complicarte la vida pues esta bien, pero es una forma mala de hacerlo, pero para practicar esta bien.

saludos!
  #10 (permalink)  
Antiguo 03/09/2008, 12:51
Avatar de morenita7722  
Fecha de Ingreso: enero-2007
Ubicación: aquí, ¿donde sino?
Mensajes: 261
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: paso de parametros en jsp

La verdad es que fue para salir un poco del paso, pero está a tiempo de ser modificado, ;)
gracias por el consejo, intentaré hacerlo bien.
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 19:08.