2011-07-07 39 views
0

您可以帮我解释为什么当我在facelet页面中使用h:dataTable时多次调用该方法的原因。在JSF中使用h:dataTable时多次调用方法

<h:dataTable id="listTable" styleClass="pageView_listForm" 
value="#{ClassName.dataFactory(topic)}" border="2" rules="rows" 
var="item" width="100%" cellpadding="1" cellspacing="0" rowClasses="panelRowOdd,panelRowEven" > 
     //Body 
     </h:dataTable> 

Bean类

@ManagedBean (name="ClassName") 
@SessionScoped 
public class ClassName{ 
    ... 
    public DataModel <Person> dataFactory(String topic){ 
     DataModel items = null; 
     .......... 
     // This block code gets the list of Person 
     .......... 
     return items; 
    } 

} 

我启动页面时,它调用的方法的DataFactory多次。我不知道到底发生了什么?这是JSF还是我的实现中的错误?你能帮我吗?

谢谢。

+0

[为什么JSF多次调用getters]可能重复(http://stackoverflow.com/questions/2090033/why-jsf-calls-getters-multiple-times) – BalusC

回答