Melloware created MYFACES-4560:
----------------------------------

             Summary: Faces Issue 
                 Key: MYFACES-4560
                 URL: https://issues.apache.org/jira/browse/MYFACES-4560
             Project: MyFaces Core
          Issue Type: Improvement
            Reporter: Melloware


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:


{code:java}
        <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>{code}




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.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to