我有一个bean,有缓存和从中获取价值的方法。
public List<SelectItem> getSelectItemList(String key){
return cache.get(key).getValue();
}
我可以知道如何在JSF中获得此列表吗?
我努力了..
<f:selectItems value="#{Bean.getSelectItemList(abc)}" />
但它不起作用,因为它需要属性。
注意:我使用的是JSF 1.2,EHCache
最佳答案
JSF代码:
<t:selectOneMenu id="testId" value="#{testBean.selectedItem}" >
<f:selectItems value="#{testBean.selectItemList}" />
</t:selectOneMenu>
管理Bean代码:
private String selectedItem;
private List selectItemList;
public List<SelectItem> getselectItemList() {
if(null == selectItemList || selectItemList.isEmpty()){
selectUserList = new ArrayList<SelectItem>();
selectItemList.add(new SelectItem(this.selectedItem, cache.get(this.selectedItem).getValue()));
}
return selectItemList;
}