On p.731 of Head First book,
Which about filters are true?
E. A filter's doFilter() method must call doFilter() on the input FilterChain object in order to ensure that all filters have a chance to execute.
...
The explanation is:
Option E is incorrect because calling doFilter() is not necessary if a filter wishes to block further request processing.
I think statement E and the explanation are both correct.