Пользовательская страница ошибки - получить первоначально запрошенный URL
проблема
Это продолжение вчерашнего (без ответа) вопроса (глянь сюдакак я пытаюсь найти альтернативный подход.
Я добавил основной
<error-page>
<error-code>404</error-code>
<location>/404search.jsf</location>
</error-page>
... к моемуweb.xml
, Теперь мне нужно получить URL-адрес, введенный пользователем, для отправки в мою функцию поиска, но мне удается получить только текущий URL-адрес (в данном случае, ...404search.jsf
) вместо фактического запроса, введенного пользователем.
попытки
HttpServletRequest.getRequestURL
возвращаетсяhttp://www.website.com/foldername/404search.jsf
HttpServletRequest.getRequestURI
возвращается/foldername/404search.jsf
HttpServletRequest.getQueryString
вообще ничего не возвращаетЯ хочу это вернуть/foldername/wrong-url-the-user-entered#anchor-if-there-is-any
Подробности...
Идея состоит в том, чтобы получить URL-адрес, введенный пользователем (например,www.site.com/product/99999-product-that-cant-be-found
или жеwww.site.com/faq/support-question-that-doesnt-exist
), REGEX это, чтобы удалить дефисы и запустить поисковый запрос с99999 product that cant be found
или жеsupport question that doesnt exist
.
Какие-либо предложения?