"rich:menuItem"中的 JSF 属性"rendered"无法从参数中读取"布尔"值



我使用JSF 1.2_09, rich faces 3.3.3, JSF -facelets 1.1.14。

看起来rich:menuItem中的rendered属性无法从参数enableEdit中读取boolean值…即使enableEdit具有true值,rich:menuItem也不会呈现(不可见)。

有谁知道解决方案,这是旧jsf的一个bug吗?

<h:form id="mainId">
    <rich:contextMenu attached="false" id="conMenu" hideDelay="400" disableDefaultMenu="false">
        <rich:menuItem action="#{foo.edit}" rendered="{enableEdit}">
            <h:outputText value="Edit" />
            <a4j:actionparam assignTo="#{someBean.id}" value="{myId}" />
        </rich:menuItem>
        <rich:menuItem action="#{foo.viw}" rendered="true">
            <h:outputText value="View" />
            <a4j:actionparam assignTo="#{someBean.id}" value="{myId}" />
        </rich:menuItem>
    </rich:contextMenu>
    <h:panelGrid columns="1">
        <rich:dataTable id="tableId" value="#{someBean.results}" var="tableIter" rowClasses="oddTableRow,evenTableRow">
            ...
            ...
            <rich:componentControl event="onRowClick" for="conMenu" operation="show" params="">
                <f:param value="#{tableIter.id}" name="myId" />            
                <f:param value="#{!tableIter.locked}" name="enableEdit" />                          
            </rich:componentControl>
        </rich:dataTable>          
    </h:panelGrid>
</h:form>

try

<h:outputText rendered="{enableEdit}">
  <rich:menuItem action="#{foo.edit}">
    <h:outputText value="Edit" />
    <a4j:actionparam assignTo="#{someBean.id}" value="{myId}" />
  </rich:menuItem>
</h:outputText> 

try:

<rich:menuItem action="#{foo.edit}" rendered="{param.enableEdit}">

最新更新