Как я могу получить значения в моем сервлете от радиовходов типа JSP со значениями да или нет? - PullRequest
0 голосов
/ 10 февраля 2019

Я новичок в JSP и сервлетах. Я хочу записать информацию о пользователе в файл, если пользователь установит флажок "да" , мой код дает мне исключение при проверке оператора if, если флажок установлен.

Вот мой jsp:

<p>Would you like us to save your personal information? 
    <form  action="inputservlet" method="post">
        <label>yes</label>
        <input type="radio" name="personalInfo" value="yes">
        <label>no</label>
        <input type="radio" name="personalInfo" value="no"><br>
        <label>Email: </label>
        <input type="email" name="email" value="${user1.email}"><br>
        <label>First Name: </label>
        <input type="text" name="firstName" value="${user1.firstName}"><br>
         <label>Last Name: </label>
        <input type="text" name="lastName" value="${user1.lastName}"><br>

    </form>

Вот мой метод doPost сервлета:

@Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        // get parameters from the request (if box was checked) 

        String infoCheckbox = request.getParameter("personalInfo");

        String plan = request.getParameter("plan");
        String email = request.getParameter("email");
        String firstName = request.getParameter("firstName");
        String lastName = request.getParameter("lastName");


        //get file to write personal info to from web.xml
        ServletContext context = getServletContext();
        String fileName = context.getInitParameter("filename");   

// Save  personal information to user object
         User user1 = new User(firstName, lastName, email);
         request.setAttribute("user1", user1); 
         UserFile userfile1= new UserFile();

// If checkbox was checked, write user to file. 

        if(infoCheckbox.equalsIgnoreCase("yes")){
            userfile1.addRecord(user1, fileName);

        }

Я получаю исключение нулевого указателя в этой строке:

if(infoCheckbox.equalsIgnoreCase("yes")){
            userfile1.addRecord(user1, fileName);

        }

Я проверил да, когда я проверял это.Разве infoCheckbox не должен быть равен «да» или «нет» в зависимости от того, какой флажок был установлен?Заранее спасибо.

...