0

ログアウトリンクを作成しています。これはログアウトBeanのコードです。

public void doLogout() {
    try {
        FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("user_info", null);
        FacesContext.getCurrentInstance().getExternalContext().redirect("../index.xhtml");
    } catch (Exception e) {
    }
}

私のxhtmlページで私は持っています

    <ul class="dropdown-menu">
        <li><h:outputLink value="#{logout.doLogout()}">Logout</h:outputLink></li>
    </ul>

私の問題は、ページに入ると、ページが自動的にログアウトし、リンク自体をクリックせずにlogout.doLogout()メソッドを呼び出すことです。

doLogout()内のコードを消去して、単にSysoutに変更しようとすると、リンクをクリックしなくてもメソッドが呼び出されます。

4

1 に答える 1

0

ああ私は愚かです..<h:commandLink action="logout.doLogout()">Logout</h:commandLink>仕事をします。

于 2013-02-14T04:04:11.167 に答える