ICEfaces
  1. ICEfaces
  2. ICE-6929

FacesContext.externalContext.response.namespace resets to empty after server roundtrip

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.8.2-EE-GA_P02
    • Fix Version/s: EE-1.8.2.GA_P04
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      Liferay 5.2.3 + Tomcat 6
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Compatibility/Configuration
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      Use namespace stored as request attribute:


          public String getNamespace() {
              Map requestMap = FacesContext.getCurrentInstance().getExternalContext().getRequestMap();
              Object namespace = requestMap.get("com.icesoft.faces.NAMESPACE");
              if( namespace != null ){
                  return namespace.toString();
              }
              return null;
          }
      Show
      Use namespace stored as request attribute:     public String getNamespace() {         Map requestMap = FacesContext.getCurrentInstance().getExternalContext().getRequestMap();         Object namespace = requestMap.get("com.icesoft.faces.NAMESPACE");         if( namespace != null ){             return namespace.toString();         }         return null;     }

      Description

      This looks to be a regression from P01. The user has facesContext.externalContext.response.namespace in their page level EL expression and on first render is correctly set. The issue occurs after a server round trip where the value then becomes empty. To reproduce the issue in the attached portal test case, select the text inside of the inputTtext and hit enter. The label for the facesContext.externalContext.response.namespace becomes blank. Here is the snippet of code:

      <ice:outputLabel value="#{facesContext.externalContext.response.namespace}" />

      In a partial update (button click or hitting enter in an inputText) in P02, the PortletResponse acquired using the property response of the externalContext is null. However in P01, the PortletResponse is correctly set.

      Test case is intended for deployment on Liferay 5.2.3 + Tomcat 6 and can be found under the "Test" portlet category.

        Activity

        Tyler Johnson created issue -
        Tyler Johnson made changes -
        Field Original Value New Value
        Attachment sc10164.war [ 13281 ]
        Tyler Johnson made changes -
        Salesforce Case [5007000000GvT5K]
        Tyler Johnson made changes -
        Environment - Liferay 5.2.3 + Tomcat 6
        Ken Fyten made changes -
        Fix Version/s EE-1.8.2.GA_P04 [ 10280 ]
        Assignee Priority P2
        Assignee Deryk Sinotte [ deryk.sinotte ]
        Deryk Sinotte made changes -
        Workaround Description Use namespace stored as request attribute:


            public String getNamespace() {
                Map requestMap = FacesContext.getCurrentInstance().getExternalContext().getRequestMap();
                Object namespace = requestMap.get("com.icesoft.faces.NAMESPACE");
                if( namespace != null ){
                    return namespace.toString();
                }
                return null;
            }
        Workaround Exists [Yes]
        Deryk Sinotte made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Affects [Documentation (User Guide, Ref. Guide, etc.), Compatibility/Configuration]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Assignee Priority P2

          People

          • Assignee:
            Deryk Sinotte
            Reporter:
            Tyler Johnson
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: