PrimeFaces dataTable方法被多次调用

时间:2017-01-13 11:00:06

标签: jsf primefaces

我有一个带有列的数据表:

bean.getWidth

似乎为表中的每一行调用"I love"方法。因此,当具有100行时,该方法被称为一百次。我希望这个方法只能被调用一次。

我错了吗?

2 个答案:

答案 0 :(得分:1)

不,这是对的。 您可以将值缓存到bean中或使用JSTL

<c:set var="width" value="#{bean.getWidth('colDate', 55)}" />

<p:dataTable value="#{cc.attrs.bean.model}" 
 ...
 <p:column style="width:#{width}px;"

您可以在https://stackoverflow.com/tags/jstl/info找到更多信息。 不要忘记命名空间。

答案 1 :(得分:0)

您可以在托管bean属性中保存getWidth的结果,然后在列样式中使用它