Question: I want to intercept a request using the RequestDispatcher, and then I want to forward the request along to another servlet -- something like this:

```
RequestDispatcher dispatcher = request.getRequestDispatcher("/servlet/some.ThirdPartyServlet" + "?" + "param_name=" + "somevalue");
dispatcher.forward(request, response);

```

If the incoming request were a POST, will the request dispatcher take my new parameters, and include them in the message body, or does this forward now become a GET?

Answer: 
It retains the original request, without changing it.

So, it will remain POST if it was POST.
If you use forward, then control stays within the servlet container, the request attributes are retained, and the request remains a POST. It's when you use redirect that it causes a response to be sent to the browser causing it to make a GET request, which is where it loses the request attributes for the original request because the GET is an entirely new request.