对于一个项目,我需要用 faces-config 文件中初始化的列表的值填充 selectonemenu。我似乎无法找到正确的答案,希望有人可以为我解答。
为什么不将 faces-config 中的值加载到 selectonemenu 中?我很确定我忘记了一些东西,但我不知道我忘记了什么。目前 selectonemenu 完全为空。下面是我的代码的副本。
面孔配置:
<managed-bean-name>myBean</managed-bean-name>
<managed-bean-class>beans.MyBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>animals</property-name>
<list-entries>
<value>Cat</value>
<value>Dog</value>
</list-entries>
</managed-property>
豆豆
private String animal;
private List<SelectItem> animals;
public String getAnimal() {
return animal;
}
public void setAnimal(String animal) {
this.animal = animal;
}
public void setAnimals(List<String> items) {
animals = new ArrayList<SelectItem>();
for (String item : items){
animals.add(new SelectItem(item));
}
}
public List<SelectItem> getAnimals() {
return animals;
}
索引.xhtml
<h:form>
<h:inputText value="#{myBean.name}"/>
<h:inputText value="#{myBean.age}"/>
<h:selectOneMenu id="animal" value="#{myBean.animal}">
<f:selectItems value="#{myBean.animals}"/>
</h:selectOneMenu>
<h:commandButton value="press" action="page2"/>
</h:form>