DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8566>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8566

Filter using ServletRequestWrapper breaks RequestDispatcher.forward

[EMAIL PROTECTED] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |INVALID



------- Additional Comments From [EMAIL PROTECTED]  2002-04-26 20:57 -------
When processing a RequestDispatcher.forward() or RequestDispatcher.include()
call, the container is required to ensure that any wrapped request (or response)
provided by the calling servlet is the very same instance that is handed to the
calling servlet (Servlet 2.3 Spec, Section 6.2.2, last paragraph).  Therefore,
it is not legal to implement request dispatcher processing by wrapping the
request provided by the calling servlet.

A consequence of this is that your wrapper class *must* delegate calls like
getServletPath() to its superclass in order to see the modified values set by
the container -- which are conceptually performed on the underlying "real"
request object itself.  If your application fails to do this, then it is the
application's problem that the "wrong" answer is returned -- just as it would be
if you overrode getServletPath() and always returned a null value, or some
constant String.

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to