Хотя ответ @ Carey верный, это не самая важная причина для класса-оболочки.
В спецификации сервлета сказано, что если вы перенаправляете запрос или ответ внутри сервлета / фильтра / JSP, то объекты запроса и ответа должны быть теми же объектами запроса / ответа, в которых контейнер был изначально передан, либообертки вокруг них, используя предоставленные классы оберток.
Так что для фильтров, которые хотят переопределить поведение предоставленных объектов запроса / ответа, они должны расширять обертки, а не просто создавать новый запрос / ответкласс из интерфейсов.
Обратите внимание, что некоторые контейнеры сервлетов (например, более старые версии Tomcat) игнорируют эту часть спецификации.