ICEfaces
  1. ICEfaces
  2. ICE-10416

noSelectionOption doesn't work in ace:selectMenu, ace:comboBox, and ace:simpleSelectOneMenu components

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 4.0
    • Fix Version/s: EE-4.0.0.GA, 4.1
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      Tested on Tomcat
    • Assignee Priority:
      P1

      Description

      <h:form>
        <ace:simpleSelectOneMenu id="countryIn" value="#{dataBean.country}" required="true">
            <f:selectItem itemValue="" itemLabel="--Select--" noSelectionOption="true"/>
            <f:selectItem itemValue="1" itemLabel="Canada"/>
        </ace:simpleSelectOneMenu>
        <h:message for="countryIn"/>
        <h:commandButton value="Submit" actionListener="#{formBean.submit}"/>
      </h:form>

      When an f:selectItem with noSelectionOption="true" is used as a default value for an ace:simpleSelectOneMenu (with required="true"), if the user selects it and submits the form the field isn't considered invalid. So the noSelectionOption doesn't appear to work with ace:simpleSelectOneMenu.
      This behaviour should be the same as h:selectOneMenu, where we would see the standard validation message ("Required value...").

      Other selection components that use SelectItem's, like ace:selectMenu and ace:comboBox, should also support the noSelectionOption attribute, if appropriate.

        Activity

        Hide
        Arturo Zambrano added a comment -

        Committed fix to 4.0 trunk at revision 43643. Added support for noSelectionOption in ace:simpleSelectOneMenu.

        Testing notes: according to the JSF documentation, noSelectionOption="true" in f:selectItem should cause a validation error if the item is selected AND the component is using required="true".

        Show
        Arturo Zambrano added a comment - Committed fix to 4.0 trunk at revision 43643. Added support for noSelectionOption in ace:simpleSelectOneMenu. Testing notes: according to the JSF documentation, noSelectionOption="true" in f:selectItem should cause a validation error if the item is selected AND the component is using required="true".
        Hide
        Arturo Zambrano added a comment -

        r43653: modified logic used to determine whether to mark component invalid or not, depending on whether it is required.

        Show
        Arturo Zambrano added a comment - r43653: modified logic used to determine whether to mark component invalid or not, depending on whether it is required.
        Hide
        Arturo Zambrano added a comment -

        r43804: committed fixes for ace:selectMenu and ace:comboBox.

        Show
        Arturo Zambrano added a comment - r43804: committed fixes for ace:selectMenu and ace:comboBox.
        Hide
        Liana Munroe added a comment -

        Tested with ICEfaces 4 trunk r43806. Tomcat 7 IE 11, FF 33, Chrome 39. There are no issues found with simpleSelectOneMenu or comboBox.
        When testing selectMenu using a noSelectionOption="true" and required=false, a validation message still appears when submitting the form. If pressing submit a second time the validation message is removed. This is not an issue with simpleSelectOneMenu or comboBox.

        QA Test app (/ICE-10416.jsf ) added to the following:
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/simpleSelectOneMenu
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/selectMenu
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/comboBox

        Show
        Liana Munroe added a comment - Tested with ICEfaces 4 trunk r43806. Tomcat 7 IE 11, FF 33, Chrome 39. There are no issues found with simpleSelectOneMenu or comboBox. When testing selectMenu using a noSelectionOption="true" and required=false, a validation message still appears when submitting the form. If pressing submit a second time the validation message is removed. This is not an issue with simpleSelectOneMenu or comboBox. QA Test app (/ ICE-10416 .jsf ) added to the following: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/simpleSelectOneMenu http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/selectMenu http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/comboBox
        Hide
        Arturo Zambrano added a comment -

        Committed fix to 4.0 trunk at revision 43884.

        This issue was seen because the select item with noSelectionOption="true" didn't have a value specified. So, this fix consisted in adding some logic to cover the case where SelectItem's have their label specified but no value.

        Testing notes: Please run regression tests.

        Show
        Arturo Zambrano added a comment - Committed fix to 4.0 trunk at revision 43884. This issue was seen because the select item with noSelectionOption="true" didn't have a value specified. So, this fix consisted in adding some logic to cover the case where SelectItem's have their label specified but no value. Testing notes: Please run regression tests.
        Hide
        Liana Munroe added a comment -

        Verified ICEfaces 4 trunk r43886. Tomcat 7, IE 11, FF 34, Chrome 39.

        Show
        Liana Munroe added a comment - Verified ICEfaces 4 trunk r43886. Tomcat 7, IE 11, FF 34, Chrome 39.

          People

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

            Dates

            • Created:
              Updated:
              Resolved: