Я использовал код "request.getHeader (" Referer "); Спасибо.
Запись заголовка «Referer» необязательна. Вы не можете полагаться на его присутствие. Кросс-браузерный способ получить предыдущую ссылку отсутствует, потому что это зависит от пользовательских настроек и конфигурации прокси-сервера (то есть того, что, по мнению системных администраторов, они должны разрешить вам видеть).
Вы должны найти способ жить без этой информации.
Непонятно, для чего он вам нужен, но я подозреваю, что он вам нужен. иметь возможность вернуться на некоторую «начальную страницу» того же веб-сайта, когда какое-либо действие будет завершено. Тогда лучший вариант - передать URI запроса в качестве параметра запроса. Например. ссылка для входа:
<a href="/login?from=${pageContext.request.requestURI}">login</a>
Сохраните в форме входа в систему для следующего запроса как скрытое входное значение формы:
<input type="hidden" name="from" value="${param.from}">
В методе действия входа просто перенаправьте на этот URL после завершения действия.
response.sendRedirect(request.getParameter("from"));
Если это не то, что вы ищете, то вам действительно стоит более детально проработать свой вопрос, чтобы спросить, как выполнить функциональное требование, а не спрашивать, как достичь (неправильного) решения.
Полагаться на рефереру любой поток бизнес-логики с самого начала было плохой идеей. Ваш первый урок веб-разработчика должен был заключаться в следующем: конечный пользователь имеет полный контроль над тем, что он отправляет с HTTP-запросом. Вы не должны полагаться на то, что вся эта информация присутствует, не говоря уже о 100% правильности.