0
我正在使用JSF 2.0。我想使用h:dataTable,並且我意識到當我在瀏覽器中打開視圖時,來自dataTable中的值的函數被調用2次。jsf <h:datatable>獲取數據兩次?
我很困惑,我不知道我做錯了什麼。也許這是正常的行爲(?)。請幫忙。
它會去System.out.println(「getList」); 2次。這是正確的?
這是我的代碼。
Bean類:
package com.sonicwall.es.bean;
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
@ManagedBean
public class UserBean {
private List<String> list=new ArrayList<String>();
public UserBean() {
list.add("Tom");
list.add("Andy");
}
public List<String> getList() {
System.out.println("getList");
return list;
}
public String getString() {
System.out.println("getString");
return "String";
}
}
查看
字符串:
<h:outputText value="#{userBean.string}" />
列表:
<h:dataTable cellpadding="10" cellspacing="0" border="5"
value="#{userBean.list}" var="item">
<h:column>
<h:outputText value="#{item}">
</h:outputText>
</h:column>
</h:dataTable>
謝謝,你提到的鏈接是有用的! – Allen 2011-03-28 08:24:51