Cree primero una pagina JSP donde se ingresa un nombre y se selecciona con checkbox un lenguaje de programación que conozcamos.
Código HTML:
Ver original
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <form action="ServletController" method="post"> <table border="0"> <tbody> <tr> </tr> <tr> </tr> @WebServlet(name = "ServletController", urlPatterns = {"/ServletController"}) public class ServletController extends HttpServlet { /** * methods. * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); DatosEncuesta datosEncuesta = new DatosEncuesta(); //Instanciamos un objeto de la clase "DatosEncuesta" la cual es una clase JavaBean datosEncuesta.setNombreCompleto(request.getParameter("nombreCompleto")); //asignamos lo recibido del objeto request proporcionado del JSP inicial a un atributo del objeto instanciado. datosEncuesta.setProgLeng(request.getParameterValues("progLeng")); //asignamos lo recibido del objeto request proporcionado del JSP inicial a un atributo del objeto instanciado. request.setAttribute("datosEncuesto", datosEncuesta); //para que sirve esto. request.getRequestDispatcher("salida.jsp").forward(request, response); <tr> </tr> <tr> </tr> </tbody> </table> </form> </body> </html>
Posterior a eso cree un paquete un paquete “package com.videotutoriales.primera.controller;” donde guarde el servlet que seria el controlador.
El codigo de este controlador es:
Código Java:
Ver original
@WebServlet(name = "ServletController", urlPatterns = {"/ServletController"}) public class ServletController extends HttpServlet { /** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods. * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) response.setContentType("text/html;charset=UTF-8"); DatosEncuesta datosEncuesta = new DatosEncuesta(); //Instanciamos un objeto de la clase "DatosEncuesta" la cual es una clase JavaBean datosEncuesta.setNombreCompleto(request.getParameter("nombreCompleto")); //asignamos lo recibido del objeto request proporcionado del JSP inicial a un atributo del objeto instanciado. datosEncuesta.setProgLeng(request.getParameterValues("progLeng")); //asignamos lo recibido del objeto request proporcionado del JSP inicial a un atributo del objeto instanciado. request.setAttribute("datosEncuesto", datosEncuesta); //para que sirve esto. request.getRequestDispatcher("salida.jsp").forward(request, response);
A la par cree otro paquete “com.videotutoriales.primera.model;” donde almacene un JavaBean el cual manejaria la parte del modelo de la aplicación. El codigo es:
Código Java:
Ver original
public class DatosEncuesta { // Add business logic below. (Right-click in editor and choose // "Insert Code > Add Business Method") return nombreCompleto; } this.nombreCompleto = nombreCompleto; } return progLeng; } this.progLeng = progLeng; } }
Para finalizar cree una pagina JSP “salida.jsp” de salida en la cual mostraria el nombre ingresado y una lista de los lenguajes seleccionados, el codigo es el siguiente
Código Java:
Ver original
<%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Resultados</title> </head> <body> <h2> Gracias por cubrir nuestra encuesta</h2> <p> <jsp:getProperty name="datosEncuesta" property="nombreCompleto" /> Usted conoce los lenguajes : <jsp:useBean id="datosEncuesta" scope="request" class="com.videotutoriales.primera.model.DatosEncuesta" /> </p> <ul> <% //la sentencia anterior captura en una array todos los valores del grupo de checkbox del objeto request if (lenguajesSeleccionados != null){ for (int i = 0; i< lenguajesSeleccionados.length; i++){ %> <li> <%=lenguajesSeleccionados[i]%> </li> <% } } %> </ul> </body> </html>
Al ejecutar el aplicativo me aparece el siguiente error.
Al parecer el error es en el codigo de la linea 17 en el JSP de salida, pero no entiendo porque se esta produciendo este error.
Gracias de ante mano por su apoyo.