ICEfaces
  1. ICEfaces
  2. ICE-3439

ice:messages component causing duplicate rendering

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 1.7.1
    • Fix Version/s: 1.8DR#2, 1.8
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      Facelets

      Description

      Here is a description of the issue based on the attached test case:

      A message is being added to the faces context in a phase listener (TestPhaseListener.java):

      public void beforePhase(PhaseEvent arg0) {
      logger.info("before:" + arg0.getPhaseId());
      if (arg0.getPhaseId().equals(PhaseId.APPLY_REQUEST_VALUES)) {
      arg0.getFacesContext().addMessage("global",new FacesMessage( FacesMessage.SEVERITY_ERROR, "error", "error"));
      }

      The page contains a panelTabSet that includes a nested tabSet along with ui:composition's. In the inner most ui:composition is where the message is being rendered (TabChangeTemplate.xhtml):

      <ice:panelGroup id="enclosingFormData">
      <ice:panelGroup>
                  <ice:messages id="myMessage1" showDetail="true" showSummary="false"/>
      </ice:panelGroup>
      <ui:insert/>
      </ice:panelGroup>
      </ui:composition>

      However, this configuration causes a duplicate message to be displayed under the panelTabSet. This issue can only be reproduce when clicking for the first time from the first tab to the second tab. All subsequent tab changes do not exhibit this behavior. Attached are screenshots and a test case.

        Activity

        Tyler Johnson created issue -
        Tyler Johnson made changes -
        Field Original Value New Value
        Description A message is being added to the faces context in a phase listener (TestPhaseListener.java):

        public void beforePhase(PhaseEvent arg0) {
        logger.info("before:" + arg0.getPhaseId());
        if (arg0.getPhaseId().equals(PhaseId.APPLY_REQUEST_VALUES)) {
        arg0.getFacesContext().addMessage("global",new FacesMessage( FacesMessage.SEVERITY_ERROR, "error", "error"));
        }

        The page contains a panelTabSet that includes a nested tabSet along with some tabs including ui:composition's. In the inner most ui:composition is where the message is being rendered (TabChangeTemplate.xhtml):

        <ice:panelGroup id="enclosingFormData">
        <ice:panelGroup>
                    <ice:messages id="myMessage1" showDetail="true" showSummary="false"/>
        </ice:panelGroup>
        <ui:insert/>
        </ice:panelGroup>
        </ui:composition>

        However, this configuration causes a duplicate message to be displayed under the panelTabSet. This issue can also only be reproduce when clicking for the first time from the first tab to the second tab. All subsequent tab changes do not exhibit this behavior. Attached are screenshots and a test case.
        Here is a description of the issue based on the attached test case:

        A message is being added to the faces context in a phase listener (TestPhaseListener.java):

        public void beforePhase(PhaseEvent arg0) {
        logger.info("before:" + arg0.getPhaseId());
        if (arg0.getPhaseId().equals(PhaseId.APPLY_REQUEST_VALUES)) {
        arg0.getFacesContext().addMessage("global",new FacesMessage( FacesMessage.SEVERITY_ERROR, "error", "error"));
        }

        The page contains a panelTabSet that includes a nested tabSet along with ui:composition's. In the inner most ui:composition is where the message is being rendered (TabChangeTemplate.xhtml):

        <ice:panelGroup id="enclosingFormData">
        <ice:panelGroup>
                    <ice:messages id="myMessage1" showDetail="true" showSummary="false"/>
        </ice:panelGroup>
        <ui:insert/>
        </ice:panelGroup>
        </ui:composition>

        However, this configuration causes a duplicate message to be displayed under the panelTabSet. This issue can only be reproduce when clicking for the first time from the first tab to the second tab. All subsequent tab changes do not exhibit this behavior. Attached are screenshots and a test case.
        Tyler Johnson made changes -
        Tyler Johnson made changes -
        Attachment screenshot-incorrect.jpg [ 11185 ]
        Tyler Johnson made changes -
        Attachment SC_5119.war [ 11186 ]
        Tyler Johnson made changes -
        Environment All Facelets
        Tyler Johnson made changes -
        Summary ice:messages printing duplicates ice:messages component causing duplicate rendering
        Ken Fyten made changes -
        Fix Version/s 1.7.2 [ 10130 ]
        Assignee Priority P3
        Assignee Mark Collette [ mark.collette ]
        Priority Major [ 3 ] Minor [ 4 ]
        Ken Fyten made changes -
        Fix Version/s 1.7.2 [ 10130 ]
        Ken Fyten made changes -
        Fix Version/s 1.8DR#2 [ 10142 ]
        Assignee Priority P3 P1
        Mark Collette made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s 1.8 [ 10161 ]
        Assignee Priority P1
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Assignee Mark Collette [ mark.collette ]

          People

          • Assignee:
            Unassigned
            Reporter:
            Tyler Johnson
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: