Я предполагаю, что вы хотите изменить входящее тело HTTP-запроса.Нет простого способа сделать это.Я не знаю ни одного Servlet API, который позволил бы вам делать это «официально».
«Неофициально» вы можете использовать магию отражения на org.apache.catalina.connector.Request
.Если вы посмотрите на этот объект, вы увидите, что оба метода, которые возвращают фактическое тело (getReader()
и getInputStream()
), создают потоки поверх входного буфера, экземпляр org.apache.catalina.connector.InputBuffer
.Вам придется манипулировать этим буфером, чтобы он возвращал испорченные данные.
Излишне говорить, что это очень изменчивый и опасный хак.Нет никаких гарантий, что это будет работать на следующей версии Tomcat (даже незначительной) и будет практически недоступно.