jsf中验证错误后恢复表单数据
我在页面上有一个组合框(下拉列表)和一个文本字段。它们都需要设置为true。当我在下拉列表中选择一个值并提交表单时,验证开始,我被重定向到同一页面,因为文本字段值为null。这是好的,但我失去了在下拉列表中选择的数据。当出现验证错误时,如何保留表单数据?我在jsf1.2中使用facelets。嗨 它在JSF2.0中运行良好。我刚试过。我编写了以下代码:jsf中验证错误后恢复表单数据,jsf,Jsf,我在页面上有一个组合框(下拉列表)和一个文本字段。它们都需要设置为true。当我在下拉列表中选择一个值并提交表单时,验证开始,我被重定向到同一页面,因为文本字段值为null。这是好的,但我失去了在下拉列表中选择的数据。当出现验证错误时,如何保留表单数据?我在jsf1.2中使用facelets。嗨 它在JSF2.0中运行良好。我刚试过。我编写了以下代码: <f:view> <h:form> <h:inputText id="n
<f:view>
<h:form>
<h:inputText id="name" value="#{jsfBean.name }" required="true"/>
<h:selectOneMenu id="items" value="#{jsfBean.selectedItem }" required="true">
<f:selectItems value="#{jsfBean.items }"/>
</h:selectOneMenu>
<h:commandButton id="submit" value="Submit" action="#{jsfBean.submit }" />
</h:form>
</f:view>
private String selectedItem;
private ArrayList<SelectItem> items = null;
public String getSelectedItem() {
this.selectedItem = "--Select--";
return selectedItem;
}
public void setSelectedItem(String selectedItem) {
this.selectedItem = selectedItem;
}
public ArrayList<SelectItem> getItems() {
this.items = new ArrayList<SelectItem>();
SelectItem selectItem = new SelectItem("1","1");
SelectItem selectItem1 = new SelectItem("--Select--","--Select--");
this.items.add(selectItem);
this.items.add(selectItem1);
return items;
}
public void setItems(ArrayList<SelectItem> items) {
this.items = items;
}
私有字符串selectedItem;
private ArrayList items=null;
公共字符串getSelectedItem(){
this.selectedItem=“--Select--”;
返回selectedItem;
}
public void setSelectedItem(字符串selectedItem){
this.selectedItem=selectedItem;
}
公共阵列列表getItems(){
this.items=new ArrayList();
SelectItem SelectItem=新建SelectItem(“1”、“1”);
SelectItem selectItem1=新建SelectItem(“--Select--”和“--Select--”);
此.items.add(选择项);
此.items.add(选择Item1);
退货项目;
}
公共无效集合项(ArrayList项){
这个项目=项目;
}
它也在JSF 1.2中工作。有一次,我在文章中读到SelectMenu中存在一些错误,无法保留该值。你能更新到最新版本1.2.X并试试吗。