Параметры запроса на чтение / запись перед сервлетом в Tomcat 7 - PullRequest
0 голосов
/ 29 декабря 2011

Есть ли способ в Tomcat 7 прочитать и изменить параметры запроса GET и POST перед вызовом сервлета?

Пока я нашел концепции Valve и Filter, но в моем случае у них есть несколько проблем:

1) Кажется, что нет способа отправить ответ прямо из клапана / фильтра без вызова сервлета

2) Запрос клапана сброса давления был удален из Tomcat 7, поэтому, если я хочу обработать параметры запроса только для одного приложения, мне нужно использовать фильтр.

3) Как безопасно изменить параметры запроса?

Есть ли решение? Пример кода будет высоко оценен!

1 Ответ

1 голос
/ 29 декабря 2011

1) Кажется, что нет способа отправить ответ прямо из клапана / фильтра без вызова сервлета

Это не правда. Просто напишите в response.getWriter() или getOutputStream() напрямую, не продолжая цепочку клапана / фильтра (то есть делайте , а не , звоните chain.doFilter(req, res)).


2) Запрос клапана сброса давления был удален из Tomcat 7, поэтому, если я хочу обработать параметры запроса только для одного приложения, мне нужно использовать фильтр.

Это действительно было заменено на RequestDumperFilter, что позволяет вам зарегистрировать его на уровне веб-приложения, а не на уровне сервера (то есть в web.xml вашего веб-приложения). См. Также Документация Tomcat .


Я только не уверен, как именно это связано с изменением запроса. Но для случая, когда вы обычно используете HttpServletRequestWrapper для.

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