Как перенаправить сервлет на указанный URL - PullRequest
6 голосов
/ 10 марта 2011

В настоящее время я использую

request.getRequestDispatcher("thePage.html").forward(request, response);

в моем сервлете пользователю новая страница. Но URL сервлета остается в адресной строке браузера. Я хочу, чтобы URL-адрес целевой страницы отображался в адресной строке браузера вместо исходного URL-адреса сервлета. Как мне это сделать?

1 Ответ

12 голосов
/ 10 марта 2011

Вы можете сделать response.sendRedirect("thePage.html"), но тогда эта страница должна быть напрямую доступна из Интернета. В частности, к нему можно получить доступ напрямую, не заходя сначала в сервлет. Это также повлечет за собой дополнительную передачу туда и обратно (тогда как форвард просто возвращает результат в том же цикле запрос-ответ).

В зависимости от того, что вы пытаетесь сделать, вам, вероятно, следует также взглянуть на фильтры сервлетов и возможность связать любое имя (включая префиксы thePage.html и пути) с сервлетом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...