[ 
https://issues.apache.org/jira/browse/MYFACES-3013?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Leonardo Uribe resolved MYFACES-3013.
-------------------------------------

       Resolution: Fixed
    Fix Version/s: 2.0.4-SNAPSHOT
         Assignee: Leonardo Uribe

Yes, if someone call setRequest, the new object should be used and all wrappers 
should be recreated (coincidentially assign null will do the trick). Thanks to 
Nick Belaevski for note this issue.

> ExternalContext: setRequest(...) method does not reset cached request maps 
> ---------------------------------------------------------------------------
>
>                 Key: MYFACES-3013
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3013
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: General
>    Affects Versions: 2.0.3
>            Reporter: Nick Belaevski
>            Assignee: Leonardo Uribe
>             Fix For: 2.0.4-SNAPSHOT
>
>
> When 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.setRequest(Object)
>  is called, cached request maps (e.g. _requestHeaderMap) are not reset, so 
> data from new request is not used.
> Here is what Mojarra does: 
>     public void setRequest(Object request) {
>         if (request instanceof ServletRequest) {
>             this.request = (ServletRequest) request;
>             requestHeaderMap = null;
>             requestHeaderValuesMap = null;
>             requestHeaderValuesMap = null;
>             requestMap = null;
>             requestParameterMap = null;
>             requestParameterValuesMap = null;
>         }
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to