валидация JSP
пытаюсь сделать сервлет. в сервлете метод doPost, в кот пока только:
String surname = request.getParameter("surname");
String name = request.getParameter("name");
....
(предполагается потом будет ставится проверка этих полей)
в jsp: <form action="emptyFieldResume" method="post">
а web.xml такой:
<servlet>
<servlet-name>emptyFieldResume</servlet-name>
<servlet-class>servlets.EmptyFieldResume</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>emptyFieldResume</servlet-name>
<url-pattern>/emptyFieldResume</url-pattern>
</servlet-mapping>
в tomcat в папке WEB-INF папка classes и в ней еще папка servlets, в котором как раз EmptyFieldResume.class.
на всякий случай папку servlets запихала в папку, где jsp находятся.
в общем, проблема такая:
когда нажимаю на Submit, то у меня открывается страница, конец url которой emptyFieldResume, соответственно ошибка - не найдена (404).
тогда в сервлете я еще добавила строку в конце response.sendRedirect("workBlank.jsp"); (не знаю, что она обозначает, но больше всего похоже на то, что ответом должна быть новая страница). ошибка осталась та же.
может кто-то помочь?
ну или хотя бы как вообще нужно валидацию jsp-страницы делать? (я не использую jstl, struts, spring...)
Купите книгу по Servlets/JSP и почитайте с самого начала.
валидацию делаю в jsp.
resume.jsp
<%if ((surname == null)) {
%>
<form action="resume.jsp" method="post" >
различные теги
<% else { %>
<jsp:forward page="workBlank.jsp"/>
<% } %>
в общем, в любом случае (заполнено ли поле surname или нет) происходит переадресация на workBlank.jsp :( почему не реагирует на условие if ?
в условие добавила surname.length == 0 - заработало.
НО. у меня есть меню выпадалка, по умолчанию значение - [выберите поле]. если я делаю так:
menu == "[выберите поле]" или menu.equals("[выберите поле]"), то на эти условия jsp не реагирует :(
это вот во-первых.
ну а во-вторых теперь нужно все-таки сервлету отдать валидацию, что не получается.
сервлет только получает параметры, проверяет их и в зависимости от проверки, переадресовывает пользователя на соответствующую страницу, например:
getServletContext().getRequestDispatcher("/resume.jsp").forward(request, response);
у меня догадки: либо неправильный web.xml, либо неправильное использование сервлета. но вроде в сервлете так можно делать, а в web.xml тоже все вроде правильно написано. в общем, в замешательстве