我正在使用ICEfaces开发一个JSF和Hibernate Web应用程序。我使用两个Facelets模板,一个用于登录页面,另一个用于站点的其余部分。
问题是,当我点击登录按钮时,它会转到主页,但不会更改URL或模板。当我输入正确的URL时,它会转到它并显示正确的模板。
我知道ICEfaces使用Ajax并部分更新页面,但我想知道如何阻止它,我希望它加载整个请求的页面。
答案 0 :(得分:1)
登录后只需发送重定向即可。您可以通过在导航结果中附加faces-redirect=true
请求参数来实现此目的。
public String login() {
// ...
return "home?faces-redirect-true";
}
或者,如果您仍然使用<navigation-case>
中faces-config.xml
的古代JSF 1.x,那么您可以通过向<redirect />
添加<navigation-case>
来实现相同目标。问题。
<naviagation-case>
<from-outcome>home</from-outcome>
<to-view-id>/home.jsf</to-view-id>
<redirect />
</navigation-case>