我使用名为dock的导航工具,来自primefaces。当我点击其中一个项目时,我需要重定向到另一个页面。 问题是我需要找到url属性的替代方法,这是因为如果我使用它,页面会被重定向并且action属性不会调用该方法应该调用。
这就是我的导航栏的样子:
<h:form>
<p:dock position="top">
<!--Some other menu items ...-->
<p:menuitem value="Logout" icon="unsecuredimages/logout.png" action="#{securityController.logOut}" rendered ="#{!securityController.checkLogged}"/>
</p:dock>
</h:form>
这是调用注销的辅助bean。它工作得很好唯一的问题是我没有被重定向。
@ManagedBean
@RequestScoped
public class SecurityController {
@EJB
private IAuthentificationEJB authentificationEJB;
public String logOut() {
authentificationEJB.releaseUserState();
return "main.xhtml";
}
...
如您所见,我试图返回String形式的支持bean方法,但不起作用。
当我点击p:menuItem时,你能帮我找到重定向的方法吗?
你知道可能有些javascript技巧或者类似的东西我可以用来点击时重定向吗?
答案 0 :(得分:4)
使用
return "main.xhtml?faces-redirect=true";