#java #forms #servlets #radio
#java #формы #сервлеты #переключатель
Вопрос:
Когда я хочу отправить радиозначение из формы на HTML-странице в сервлет Java, это всегда кажется нулевым значением, вместо «1» или «2» или…
Вот HTML-код, который у меня есть:
<form method="post" action="/testWeb/animalsurvey" target="_blank">
<p>What is your favorite pet?</p>
<p><input type="radio" name="animal" value="1" />Dog<br />
<input type="radio" name="animal" value="2" />Cat<br />
<input type="radio" name="animal" value="3" />Bird<br />
<input type="radio" name="animal" value="4" />Snake<br />
<input type="radio" name="animal" value="5" checked="checked" />None</p>
<p><input type="submit" value="Submit" /></p>
Это код сервлета Java:
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
String value = request.getParameter("name");
out.println(value);
}
Web.xml код, который показывает отображение сервлета:
<servlet>
<servlet-name>animalsurvey</servlet-name>
<description>A survey servlet.</description>
<servlet-class>be.SurveyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>animalsurvey</servlet-name>
<url-pattern>/animalsurvey</url-pattern>
</servlet-mapping>
Я не знаю, слепой ли я, чтобы увидеть это здесь, но что я делаю не так?
Ответ №1:
Похоже, это имя параметра:
Пожалуйста, попробуйте:
String value = request.getParameter("animal");
Комментарии:
1. Вау, теперь я чувствую себя действительно глупо. Это действительно была моя ошибка.
2. Это распространенная ошибка, не расстраивайтесь 🙂