我想使用一个h:inputText
来调用多个bean中的搜索方法。要求用户在h:inputText
中键入地名,place
是所有bean中的变量,然后每个searchMethod都会找到带有地点条件的记录。
问题首先是:如何为一个h:inputText
和h:commandButton
调用多个bean方法?第二:在用户按Enter键后,如何重定向到搜索页面,所有结果按bean名称分组?
我发现this关于在没有h:inputText
的情况下使用h:commandButton
的问题,但如何调用多个bean以及如何重定向到search_results.xhtml
页面。
我正在使用jsf 2.2
更新
我写了下面的代码,但我不知道如何设置渲染属性,以便重定向到search.xhtml页面。我已将其设置为place
,这是输入文本的ID,它只是重新加载页面。
<h:inputText id="place" value="#{bean.place}"
onkeypress="if(event.keyCode === 13){onchange(event); return false;}"
onchange="return event.keyCode !== undefined">
<f:param name="place" value="#{bean.place}"/>
<f:ajax listener="#{bean.goToSearch}" render="place"/>
</h:inputText>
goToSearch():
public String goToSearch(AjaxBehaviorEvent event){
return "Search.xhtml?faces-redirect=true&includeViewParams=true";
}