ICEfaces
  1. ICEfaces
  2. ICE-9655

When ace:dataTable alwaysExecuteContents set to False it is Executing Contents

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.3.0.GA_P01
    • Fix Version/s: 4.0.BETA, EE-3.3.0.GA_P02, 4.0
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      Tomcat 7
    • Assignee Priority:
      P2
    • Salesforce Case Reference:

      Description

      According to the ace:dataTable tld for alwaysExecuteContents:

      Enable the decoding of child components during table feature requests. The table attempts to decode children whenever it is executed, meaning whenever a parent region is submitted, or the table submits itself to paginate, make a selection, reorder columns, or any other feature. Decoding children during feature requests can result in unwanted input submission (during pagination for example), so by default this component suppresses child decoding whenever submitting itself.

      The default is false, meaning child components should NOT be executed. However, in the showcase, if you replace one of the h:outputText tags with an h:inputText tag in dataTableLazyLoading.xhtml and add a customer f:validator, you will see the validator execute when paginating, meaning the component has been decoded.

      Page Markup:

                          <h:inputText id="nameCell" value="#{car.name}">
                              <f:validator validatorId="test.validator" />
                          </h:inputText>

      Validator:

      package org.icefaces.samples.showcase.example.ace.dataTable;

      import javax.faces.component.UIComponent;
      import javax.faces.context.FacesContext;
      import javax.faces.validator.FacesValidator;
      import javax.faces.validator.Validator;
      import javax.faces.validator.ValidatorException;

      @FacesValidator("test.validator")
      public class TestValidator implements Validator {

          public void validate(FacesContext facesContext, UIComponent uiComponent, Object o) throws ValidatorException {
              System.out.println("VALIDATION !!!!");
          }
      }


        Activity

        Brad Kroeger created issue -
        Brad Kroeger made changes -
        Field Original Value New Value
        Assignee Ken Fyten [ ken.fyten ]
        Brad Kroeger made changes -
        Salesforce Case Reference 5007000000UaCTLAA3
        Ken Fyten made changes -
        Fix Version/s 3.4 [ 10770 ]
        Fix Version/s EE-3.3.0.GA_P02 [ 11371 ]
        Assignee Ken Fyten [ ken.fyten ] Arturo Zambrano [ artzambrano ]
        Assignee Priority P1 [ 10010 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #38647 Tue Oct 22 10:59:56 MDT 2013 art.zambrano ICE-9655 fix to prevent child components from executing when alwaysExecuteContents=false
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/datatable/DataTable.java
        Hide
        Arturo Zambrano added a comment -

        Committed fix at revision 38647. The alwaysExecuteContents attribute wasn't being checked at processDecodes() and processValidations(). The problem was present in lazy and non-lazy modes.

        Show
        Arturo Zambrano added a comment - Committed fix at revision 38647. The alwaysExecuteContents attribute wasn't being checked at processDecodes() and processValidations(). The problem was present in lazy and non-lazy modes.
        Arturo Zambrano made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Cruz Miraback added a comment -

        Re-opening because a related issue has been found.

        When there is a dataTable with input fields in one of the body columns (that fail validation) and alwaysExecuteContents=false, the row/panel expansion features don't function. The arrow image changes state but it doesn't actually display the additional row/panel. When the fields pass validation the expansion works fine, and other features seem to work as well, like sorting, filtering, pagination, etc...

        It can be reproduced using this test page:
        http://server.ice:8888/svn/repo/qa/trunk/Regression-Icefaces2/Sparkle/Nightly/dataTable/web/views/validationFailedTest.xhtml

        Show
        Cruz Miraback added a comment - Re-opening because a related issue has been found. When there is a dataTable with input fields in one of the body columns (that fail validation) and alwaysExecuteContents=false, the row/panel expansion features don't function. The arrow image changes state but it doesn't actually display the additional row/panel. When the fields pass validation the expansion works fine, and other features seem to work as well, like sorting, filtering, pagination, etc... It can be reproduced using this test page: http://server.ice:8888/svn/repo/qa/trunk/Regression-Icefaces2/Sparkle/Nightly/dataTable/web/views/validationFailedTest.xhtml
        Cruz Miraback made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Hide
        Arturo Zambrano added a comment -

        r38709:
        Committed fix for issue mentioned in previous comment.

        Show
        Arturo Zambrano added a comment - r38709: Committed fix for issue mentioned in previous comment.
        Arturo Zambrano made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #38709 Thu Oct 31 14:52:41 MDT 2013 art.zambrano ICE-9655 fix for alwaysExecuteContents=false and row/panel expansion issue
        Files Changed
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/datatable/DataTable.java
        Ken Fyten made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Assignee Priority P1 [ 10010 ] P2 [ 10011 ]
        Hide
        Arturo Zambrano added a comment -

        Backported fix to 3.3 EE maintenance branch at revision 38740.

        Show
        Arturo Zambrano added a comment - Backported fix to 3.3 EE maintenance branch at revision 38740.
        Arturo Zambrano made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s 4.0 [ 11382 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Brad Kroeger
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: