RequestDispatcher для jsp или сервлета

Параметры[userName, UserPW] отправляются пользователем через home.jsp. Эти параметры сопоставляются в сервлете входа в систему с сохраненной базой данных userInfo с использованием JDBC.

В методе doPost я использую условие t для аутентификации следующим образом.

if (rs.next()) {
            String refName = rs.getString("UserName");

            String refPass = rs.getString("userPW");

            if (user.equals(refName) && pw.equals(refPass)) {

                out.println("<br>You are In");

                RequestDispatcher dispatch= getRequestDispatcher("/SearchFriend.jsp");
                dispatch.forward(req, resp);

                System.out.println("sucess");

            }

Когда аутентификация прошла успешно, как я могу направить пользователя к новому jsp или сервлету, где он может ввести несколько текстовых полей и выбрать параметры, чтобы выбрать несколько записей из таблицы Db. мне не ясно, как я могу направить страницу на страницу Search.jsp в приведенном выше условии. Search.jsp находится в папке webContent Juno.

Я использую JDBC с tomcat7. Пожалуйста помоги


person javaz    schedule 28.08.2013    source источник
comment
вы также можете использовать response.sendRedirect();   -  person SpringLearner    schedule 29.08.2013
comment
я понимаю, что в спецификации HTTP указано, что все перенаправления должны быть в форме GET (или HEAD) - это правильно???   -  person javaz    schedule 29.08.2013


Ответы (1)


Вероятно, неясно, каковы именно ваши требования и чего вы пытаетесь достичь, изучая опубликованный вами код. Пожалуйста, переформулируйте свой вопрос.

По моему предположению, нужно перенаправить пользователя на домашнюю страницу при успешной аутентификации.

Если это так, для этого вы можете сохранить учетные данные пользователя в сеансе, создав собственный фильтр, сказав, что SessionFilter реализует фильтр.

HttpSession session = request.getSession();

Сохраните учетные данные в сеансе и, если аутентификация прошла успешно, перенаправьте, используя:

RequestDispatcher view = request.getRequestDispatcher(/home.jsp);
view.forward(req,resp);
person Manish Sahni    schedule 29.08.2013