| The PAERequestWrapper is for wrapper the original
HttpServletRequest before passing it to the RequestDispatcher.include().
A wrapper is needed because the PortletContainer and the
PortletApplicationEngine communicate with each other by setting the
PortletContainerRequest and PortletContainerResponse
to the request atributes. Without a wrapper, this mechanism for
communicating does not work under multi-threaded environment since
each RequestDispatcher.include() call overwrites the attributes of the
previous call. This wrapper only wraps the getAttribute()
and setAttribute() methods.
|