Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/06/2016, 12:53
wagego
 
Fecha de Ingreso: agosto-2015
Mensajes: 24
Antigüedad: 9 años, 4 meses
Puntos: 0
problema jsp y servlet

Buenos días gente, estoy teniendo un problema, quizas fácil, quizas no.

La cosa es así.
En un proyecto dinamico web, tengo un simple formulario en un index.jsp. (nombre, apellido, edad). El cual al hacer un submit tengo que devolver un mensaje de error si en la pagina hay algún dato que no haya ingresado.

Este mensaje de error, lo tengo que traer desde un servlet, el cual llama a una clase que ProcesaPaginas minas, en la cual lanza la excepción y la atrapo en el servlet.

El servlet, tiene que tirarle al jsp el mensaje y el input de tipo texto que esta incompleto.

El problema es que desde el servlet, cuando necesito volver al formulario, este, se limpia y queda desde cero.

Yo necesito conservar los datos, por ej:

Nombre:
Apellido: Perez
Edad: 32

Cuando el servlet hace el :
request.getRequestDispatcher("index.jsp").forward( request, response);
necesito volver al browser y que la pagina tire el alert("por favor ingrese el nombre")---> esto ya lo tengo hecho y me funciona, pero la pagina queda en cero

Nombre:
Apellido:
Edad:

¿cómo tengo que hacer para que esto no me pase?.

LEs muestro el código del servlet.

DoPost

HttpSession httpS = request.getSession(true);
httpS = cargarAtributosDesdeCliente(request);


try {
El ProcesaHttpSession es el encargado de lanzarme la excepción de que campo es el incompleto
ProcesaHttpSession pc = new ProcesaHttpSession(httpS);
} catch (ExcepcionDatoNumerico e) {
e.printStackTrace();
request.setAttribute("ControlError", e.getLocalizedMessage().split("-")[1].trim());
request.setAttribute("ControlErrorMensaje", e.getLocalizedMessage().split("-")[0].trim());
request.setAttribute("alertMsg", e.getLocalizedMessage().split("-")[0].trim());
request.getRequestDispatcher("index.jsp").forward( request, response);
} catch (ExcepcionCampoVacio e) {
e.printStackTrace();
request.setAttribute("ControlError", e.getLocalizedMessage().split("-")[1].trim());
request.setAttribute("ControlErrorMensaje", e.getLocalizedMessage().split("-")[0].trim());
request.setAttribute("alertMsg", e.getLocalizedMessage().split("-")[0].trim());
System.out.println("campovaciooooo");
request.setAttribute("apellido", "nada");
RequestDispatcher rd = getServletContext().getRequestDispatcher("/index.jsp");
rd.include(request, response);

}


Gracias.