I think it shud be A,B and F A- It's clearly Decorator pattern B- When you extend HttpServletRequestWrapper, you are extending HttpServletRequest implementation. F - A Filter should be able to modify the request header before passing it to servlet
A and B are correct. F is probably the "correct" third answer, though you can't really alter the request's header. You can only change the behavior of the methods that return header information, making it appear as though the header were manipulated.