With <jsp:forward>, the buffer is cleared BEFORE the forward
When a forward happens, the resource to which the request is forwarded starts with a clear response buffer! In other words, anything written to the response before the forward happens is thrown out.
There are no Dumb Questions
Q: This makes sense if the page is buffered... because what you write is sent to the buffer, and the Container just clears the buffer. But what if you commit the response BEFORE you do the forward? Like, what happens if you write something and then call flush() on the out object?
A: OK, we know you’re just asking this out of intellectual curiosity since it would be a phenomenally stupid and pointless thing to do. But you know that.
But you also know that weird things can still be on the exam, since your too-lazy-to-learn-it co-worker might just put something this crazy into his code, in which case you better get used to it.
You can probably think through the answer, though. If you write something like: