Now we are in 'mail' web application, and one of its jsp wants to do redirect, and it can be done by
In the above code the JSTL's <c:url >tag is used for URL rewriting and URL encoding. At the end it produces
with 'jsessionid' if the client disables cookies(like /mail/;jsessionid=...) and sets the attribute 'var' in page scope like,
Here the values '1' and 'tl' are produced by 'paramOne' and 'paramTwo' that are set some where in the application.
Now we have to get the attribute 'var' that was set in the page socpe. It can be done by Now we have the URL and we are about to redirect it by using response object's sendRedirect(String str) method, like Now the redirection wil happens. During redirecting, the client(browser) sends the request to the server by using the url
Now the DD checks the url pattern, here it is '/'(default servlet) and finds the appropriate servlet and sends the parameters 'fs=1&view=tl' to it, process it and finally the response will be sent to the client.
For me, the only difference between www.example.com/login/? and www.example.com/login? is that the first one will map to a servlet mapped to /login/* and the other one is mapped to /login. So basically both the paths can map to a servlet (this is of course if the application on this domain is mapped to ROOT)...