JSF 1.2 / RichFaces 3.3.x中的客户端缓存

时间:2011-12-01 14:43:57

标签: java jsf richfaces

我觉得这违背了JSF的一般范例,但我想我会问是否有可能。

我有一个正在呈现的<rich:dataTable>,并且对于每次迭代(行),需要进行数据库查找以确定该bean是否可编辑。麻烦的是我需要知道bean是否可以在几个位置编辑,让它为 n

然后问题是我必须 n 重复调用数据库。

这引出了我提出的问题:是否可以在迭代期间缓存函数调用客户端的结果?

<rich:dataTable>
    <rich:column>
        <f:facet name="header">
        <h:outputText value="Name"/>
    </f:facet>
        <h:outputText value="#{bean.name}"/>
    </rich:column>
    <rich:column>
        <f:facet name="header">
        <h:outputText value="Editable"/>
    </f:facet>
        <!-- Cache the result of the 'isEditable' function call -->
        <h:outputText value="#{mylib:isEditable(bean) ? 'Yes' : 'No'}"/>
    </rich:column>
    <!-- More content which requires the editable value -->
</rich:dataTable>

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:-1)

如果bean对象中有此值,则可以应用:

    <h:outputText value="Yes" rendered="#{bean.isEditable=='YES'}" />
    <h:outputText value="No" rendered="#{bean.isEditable=='NO'}" />