Java JSF表单提交问题
在JSP中,出于某些原因,我使用c:foreach迭代模型并在HTML表中显示项目。jsp页面有一个searh按钮,其操作映射到{mybackingbean.search}。因此,当我单击搜索时,我希望在同一页面上只显示一个子集(基于搜索参数)。我的问题是,“当我单击“搜索”按钮时,搜索方法被调用,它返回一个视图名称。由于bean是请求范围的,因此在此之后将创建一个新的bean实例,并且最终init方法将覆盖结果。这意味着,我将得到相同的初始视图,其中显示所有项,而不是仅显示匹配项” 这有什么问题?请指导我解决这个问题的理想方法。Java JSF表单提交问题,java,jsp,jsf,Java,Jsp,Jsf,在JSP中,出于某些原因,我使用c:foreach迭代模型并在HTML表中显示项目。jsp页面有一个searh按钮,其操作映射到{mybackingbean.search}。因此,当我单击搜索时,我希望在同一页面上只显示一个子集(基于搜索参数)。我的问题是,“当我单击“搜索”按钮时,搜索方法被调用,它返回一个视图名称。由于bean是请求范围的,因此在此之后将创建一个新的bean实例,并且最终init方法将覆盖结果。这意味着,我将得到相同的初始视图,其中显示所有项,而不是仅显示匹配项” 这有什么问
- 不要使用重定向,使用前进(在导航情况下)
- 如果使用JSF2.0,请使用
@ViewScope
- 检查我的脸
- 从richfaces中尝试
public class MyBackingBean{
private List model;
public String search(){
//change model data
model = doSearch();
return "same_view"
}
@PostConstruct
public void init(){
model = loadDefault()
}
//Other code omitted for clarity
}