Uploaded image for project: 'MyFaces Core'
  1. MyFaces Core
  2. MYFACES-4560

Faces Issue #1791 SelectItems rendering

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.3.10, 2.3-next-M7, 3.0.2, 4.0.0-RC4
    • 4.0.0
    • None
    • None

    Description

      See; https://github.com/jakartaee/faces/issues/1791

       

      The component should render the itemLabel as instructed by the provided EL, even if the backed data type is SelectItem. The default rendering should only be done when the attribute is missing.

      Example:

              <h:form id="frmTest">
                  <p:selectOneMenu id="test1">
                      <f:selectItems value="#{testView.items}" var="i" itemValue="#{i.value}" itemLabel="#{i.value} - #{i.label}" />
                  </p:selectOneMenu>
                  <p:selectOneMenu  id="test2">
                      <f:selectItems value="#{testView.items2}" var="i" itemValue="#{i.key}" itemLabel="#{i.key} - #{i.value}" />
                  </p:selectOneMenu>
                  <p:selectOneMenu  id="test3">
                      <f:selectItems value="#{testView.items}" />
                  </p:selectOneMenu>
                  <p:selectOneMenu  id="test4">
                      <f:selectItems value="#{testView.items2}" />
                  </p:selectOneMenu>
              </h:form>

      The issue is `id="test1"` the user is expecting it to render `itemLabel="#{i.key} - #{i.value}"` but it is ignored and just the underlying Java SelectItem value is rendered.

      Attachments

        Activity

          People

            tandraschko Thomas Andraschko
            melloware Melloware
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: