Не без изменения сервлетов / JSP, чтобы они устанавливали определенный атрибут запроса, который вы, в свою очередь, получаете после вызова FilterChain#doFilter()
.
Я могу только дать подсказку, что HttpServletRequest#getServletPath()
, вероятно, является более хорошим способом получения фактически запрашиваемого ресурса. Он делает это независимо от контекста, поэтому вам не нужно возиться с getRequestURI()
, чтобы обрезать путь к контексту. Кроме того, если есть сервлет, который сопоставлен, например, /foo/*
, то он вернет только /foo
вместо /foo/bar/baz
. На всякий случай, если вам интересно.
Поскольку вы используете Tomcat, вас может заинтересовать его встроенный Access Log Valve , который предлагает вам возможность регистрировать запросы меньше или больше так же, как хорошо известный Apache HTTPD, включая время , Это, конечно, только в том случае, если вы имеете полный административный контроль над экземпляром Tomcat.