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.