Creando un enlace simple que invoca un método jsf.

Estoy creando un enlace de cierre de sesión y este es el código del bean de cierre de sesión.

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

en mi página xhtml tengo

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

mi problema es cuando entro en la página, la página me desconecta automáticamente, invoca el método logout.doLogout () sin que yo haga clic en el enlace en sí.

Intenté borrar el código dentro de doLogout () y simplemente cambiarlo a simplemente un Sysout, e invoca el método sin que yo haga clic en el enlace.

Respuestas a la pregunta(1)

Su respuesta a la pregunta