从具有主面的菜单项调用托管bean的特定方法

时间:2013-06-12 17:21:07

标签: jsf-2 menu primefaces menuitem menubar

我有一个带有Primefaces的JSF2页面构建。在这个页面中,我有一个菜单栏,其中包含以下代码,有3个菜单项:File - >打开,创建,退出。

<p:menubar styleClass="ui-menuitem-link">
  <p:submenu label="File" icon="ui-icon-document">
    <p:menuitem value="Create" icon="ui-icon-contact" url="fileCreate.jsf" />
    <p:menuitem value="Open" url="fileOpen.jsf"  />
    <p:menuitem value="Quit" url="#" />
  </p:submenu>
</p:menubar>

我有关于退出菜单项的问题。在这里,当用户想要注销时,他曾经点击退出菜单项。对于login-logout目的,我有单独的会话作用域UserServiceBean托管bean,其中包含方法

public String login();
public String logout();
public boolean isUserLoggedIn();
public String register();

所以我遇到了我在menuitem中提供的url应该是什么,以便我可以直接调用UserServiceBean.logout()方法,登录用户将通过此服务bean注销。我尝试为p:menuItem提供action和actionListener属性,但它没有帮助。

1 个答案:

答案 0 :(得分:0)

尝试这样。

<p:menuitem id="id"
value="Your Menu Text"
icon="fa fa-user"
actionListener="#{yourManagedBean.youtMethod}"/>