Estou com o seguinte problema, sempre quando seleciono uma opção do menu, um metodo qual não estava na chamada é invocado.
Por exemplo como mostrado o código abaixo, a tela seria uma composição de um menu e suas navegações, mas sempre quando clico em uma opção do menu, ao mesmo tempo ele invoca o metodo “menuConfiguracaoMicrofone”, não importa em qual opção do menu eu clique, sempre chama o metodo "menuConfiguracaoMicrofone"mais o mesmo que foi clicado. Não consigo encontrar qual o motivo do metodo ser chamado.
<ui:fragment xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"
xmlns:p="http://primefaces.org/ui">
<h:form>
<div class="sidebar app-aside" id="sidebar">
<div class="sidebar-container perfect-scrollbar">
<nav>
<!-- start: SEARCH FORM -->
<div class="search-form">
<a class="s-open" href="#"> <i class="ti-search"></i>
</a>
</div>
<!-- end: SEARCH FORM -->
<!-- start: MAIN NAVIGATION MENU -->
<div class="navbar-title">
<span>Navegação principal</span>
</div>
<ul class="main-navigation-menu">
<li class="#{controleMenu.menuInicio ? 'active open' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/admin/principal.jsf')}">
<div class="item-content">
<div class="item-media">
<i class="ti-home"></i>
</div>
<div class="item-inner">
<span class="title">Início</span>
</div>
</div>
</p:commandLink>
</li>
<li class="#{controleMenu.menuReuniao ? 'active open' : ''}">
<a href="javascript:void(0)">
<div class="item-content">
<div class="item-media">
<i class="ti-settings"></i>
</div>
<div class="item-inner">
<span class="title">Reunião</span><i class="icon-arrow"></i>
</div>
</div>
</a>
<ul class="sub-menu">
<li class="#{controleMenu.menuControleReuniao ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/reuniao/controle.xhtml')}">
<span class="title">Controle</span>
</p:commandLink>
</li>
<li class="#{controleMenu.menuPainelReuniao ? 'active' : ''}">
<h:commandLink
action="#{controleMenu.doAcionarPagina('/reuniao/painel.xhtml')}"
target="_blank" immediate="true">
<span class="title">Painel</span>
</h:commandLink>
</li>
</ul>
</li>
<li class="#{controleMenu.menuCadastro ? 'active open' : ''}">
<a href="javascript:void(0)">
<div class="item-content">
<div class="item-media">
<i class="ti-settings"></i>
</div>
<div class="item-inner">
<span class="title">xxx</span><i class="icon-arrow"></i>
</div>
</div>
</a>
<ul class="sub-menu">
<li class="#{controleMenu.menuPessoaCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/pessoa-listagem.xhtml')}">
<span class="title">xxx</span>
</p:commandLink>
</li>
<li class="#{controleMenu.menuEntidadeCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/entidade-listagem.xhtml')}">
<span class="title">xxx</span>
</p:commandLink>
</li>
<li class="#{controleMenu.menuPartidoCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/partido-listagem.xhtml')}">
<span class="title">xxx</span>
</p:commandLink>
</li>
<li
class="#{controleMenu.menuLegislaturaCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/legislatura-listagem.xhtml')}">
<span class="title">xxx</span>
</p:commandLink>
</li>
<li class="#{controleMenu.menuQuorumCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/quorum-listagem.xhtml')}">
<span class="title">xxxx</span>
</p:commandLink>
</li>
<li
class="#{controleMenu.menuTipoProposicaoCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/tipo-proposicao-listagem.xhtml')}">
<span class="title">Tipos de xxxx</span>
</p:commandLink>
</li>
<li
class="#{controleMenu.menuTipoAfastarCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/tipoAfastar-listagem.xhtml')}">
<span class="title">Tipo de xxxx</span>
</p:commandLink>
</li>
<li
class="#{controleMenu.menuParlamentarCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/parlamentar-listagem.xhtml')}">
<span class="title">xxxx</span>
</p:commandLink>
</li>
<li
class="#{controleMenu.menuProposicaoCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/proposicao-listagem.xhtml')}">
<span class="title">xxxx</span>
</p:commandLink>
</li>
<li
class="#{controleMenu.menuTipoReuniaoCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/tipo-reuniao-listagem.xhtml')}">
<span class="title">Tipos de xxxxx</span>
</p:commandLink>
</li>
<li class="#{controleMenu.menuReuniaoCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/reuniao-listagem.xhtml')}">
<span class="title">xxxx</span>
</p:commandLink>
</li>
<li class="#{controleMenu.menuEleicaoCadastro ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/eleicao-listagem.xhtml')}">
<span class="title">xxxx</span>
</p:commandLink>
</li>
</ul>
</li>
<li class="#{controleMenu.menuConfiguracao ? 'active open' : ''}">
<a href="javascript:void(0)">
<div class="item-content">
<div class="item-media">
<i class="ti-layout-grid2"></i>
</div>
<div class="item-inner">
<span class="title"> xxxx </span><i class="icon-arrow"></i>
</div>
</div>
</a>
<ul class="sub-menu">
<li class="#{controleMenu.menuConfiguracaoVoz ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/javaSpeech-cadastro.xhtml')}">
<span class="title">xxx</span>
</p:commandLink>
</li>
<li
class="#{controleMenu.menuConfiguracaoConfiguracao ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/configuracao-listagem.xhtml')}">
<span class="title">Metodo que sempre é chamado apos o clique em outro op do menu</span>
</p:commandLink>
</li>
<li class="#{controleMenu.menuConfiguracaoMesa ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/mesa-listagem.xhtml')}">
<span class="title">xxxx</span>
</p:commandLink>
</li>
<li
class="#{controleMenu.menuConfiguracaoMicrofone ? 'active' : ''}">
<p:commandLink
action="#{controleMenu.doAcionarPagina('/secretario/microfone-listagem.xhtml')}">
<span class="title">xxx microfone</span>
</p:commandLink>
</li>
</ul>
</li>
</ul>
<!-- end: MAIN NAVIGATION MENU -->
<!-- start: CORE FEATURES -->
<!-- end: CORE FEATURES -->
<!-- start: DOCUMENTATION BUTTON -->
<div class="wrapper">
<a href="documentation.html" class="button-o"> <i
class="ti-help"></i> <span>Documentação</span>
</a>
</div>
<!-- end: DOCUMENTATION BUTTON -->
</nav>
</div>
</div>
</h:form>
</ui:fragment>
package br.com.supremanet.camara.controller.bean;
import java.io.Serializable;
import java.util.Set;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import br.com.supremanet.camara.controller.app.Contexto;
import br.com.supremanet.camara.controller.util.Papel;
import br.com.supremanet.camara.infra.CamaraException;
@ManagedBean
@SessionScoped
public class ControleMenu implements Serializable{
private static final long serialVersionUID = 1L;
private boolean menuInicio;
private boolean menuReuniao;
private boolean menuControleReuniao;
private boolean menuPainelReuniao;
private boolean menuCadastro;
private boolean menuPessoaCadastro;
private boolean menuEntidadeCadastro;
private boolean menuPartidoCadastro;
private boolean menuProposicaoCadastro;
private boolean menuQuorumCadastro;
private boolean menuReuniaoCadastro;
private boolean menuTipoReuniaoCadastro;
private boolean menuTipoProposicaoCadastro;
private boolean menuLegislaturaCadastro;
private boolean menuEleicaoCadastro;
private boolean menuParlamentarCadastro;
private boolean menuTipoAfastarCadastro;
private boolean menuConfiguracao;
private boolean menuConfiguracaoVoz;
private boolean menuConfiguracaoConfiguracao;
private boolean menuConfiguracaoMesa;
private boolean menuConfiguracaoMicrofone;
private boolean menuConfiguracaoGeralVotacao;
public String inicio() {
Set<String> papel = null;
try {
papel = Contexto.getSessao().getPessoa().getPapel();
} catch (CamaraException e) {
Contexto.setMensagemErro("Erro");
return null;
}
if ( papel.contains(Papel.ROLE_ADMINISTRADOR) ) return "/admin/principal.jsf";
if ( papel.contains(Papel.ROLE_SECRETARIO) ) return "/secretario/principal.jsf";
if ( papel.contains(Papel.ROLE_PRESIDENTE) ) return "/presidente/principal.jsf";
if ( papel.contains(Papel.ROLE_PARLAMENTAR) ) return "/parlamentar/principal.jsf";
if ( papel.contains(Papel.ROLE_EXECUTIVO) ) return "/executivo/principal.jsf";
if ( papel.contains(Papel.ROLE_OPERADOR) ) return "/operador/principal.jsf";
return "/publico/acesso-negado.jsf";
}
public void setTodosFalse() {
menuInicio = false;
menuConfiguracaoMesa = false;
menuConfiguracaoMicrofone = false;
menuConfiguracaoConfiguracao = false;;
menuReuniao = false;
menuControleReuniao = false;
menuPainelReuniao = false;
menuConfiguracao = false;
menuCadastro = false;
menuPessoaCadastro = false;
menuEntidadeCadastro = false;
menuPartidoCadastro = false;
menuProposicaoCadastro = false;
menuQuorumCadastro = false;
menuReuniaoCadastro = false;
menuTipoReuniaoCadastro = false;
menuTipoProposicaoCadastro = false;
menuLegislaturaCadastro = false;
menuEleicaoCadastro = false;
menuConfiguracaoVoz = false;
menuParlamentarCadastro = false;
menuTipoAfastarCadastro = false;
menuConfiguracaoGeralVotacao = false;
}
public boolean isMenuCadastro() {
return menuCadastro;
}
public void setMenuCadastro() {
setTodosFalse();
this.menuCadastro = true;
}
public boolean isMenuConfiguracao(){
return menuConfiguracao;
}
public void setMenuConfiguracao(){
setTodosFalse();
this.menuConfiguracao = true;
}
public boolean isMenuInicio() {
return menuInicio;
}
public void setMenuInicio() {
setTodosFalse();
this.menuInicio = true;
}
public String doAcionarPagina(String url) {
url = url+"?faces-redirect=true";
return url;
}
public boolean isMenuPessoaCadastro() {
return menuPessoaCadastro;
}
public void setMenuPessoaCadastro() {
setMenuCadastro();
this.menuPessoaCadastro = true;
}
public boolean isMenuEntidadeCadastro() {
return menuEntidadeCadastro;
}
public void setMenuEntidadeCadastro() {
setMenuCadastro();
this.menuEntidadeCadastro = true;
}
public boolean isMenuPartidoCadastro() {
return menuPartidoCadastro;
}
public void setMenuPartidoCadastro() {
setMenuCadastro();
this.menuPartidoCadastro = true;
}
public boolean isMenuProposicaoCadastro() {
return menuProposicaoCadastro;
}
public void setMenuProposicaoCadastro() {
setMenuCadastro();
this.menuProposicaoCadastro = true;
}
public boolean isMenuQuorumCadastro() {
return menuQuorumCadastro;
}
public void setMenuQuorumCadastro() {
setMenuCadastro();
this.menuQuorumCadastro = true;
}
public boolean isMenuReuniaoCadastro() {
return menuReuniaoCadastro;
}
public void setMenuReuniaoCadastro() {
setMenuCadastro();
this.menuReuniaoCadastro = true;
}
public boolean isMenuTipoReuniaoCadastro() {
return menuTipoReuniaoCadastro;
}
public void setMenuTipoReuniaoCadastro() {
setMenuCadastro();
this.menuTipoReuniaoCadastro = true;
}
public boolean isMenuTipoProposicaoCadastro() {
return menuTipoProposicaoCadastro;
}
public void setMenuTipoProposicaoCadastro() {
setMenuCadastro();
this.menuTipoProposicaoCadastro = true;
}
public boolean isMenuLegislaturaCadastro() {
return menuLegislaturaCadastro;
}
public void setMenuLegislaturaCadastro() {
setMenuCadastro();
this.menuLegislaturaCadastro = true;
}
public boolean isMenuEleicaoCadastro() {
return menuEleicaoCadastro;
}
public void setMenuEleicaoCadastro() {
setMenuCadastro();
this.menuEleicaoCadastro = true;
}
public boolean isMenuParlamentarCadastro() {
return menuParlamentarCadastro;
}
public void setMenuParlamentarCadastro() {
setMenuCadastro();
this.menuParlamentarCadastro = true;
}
public boolean isMenuReuniao() {
return menuReuniao;
}
public void setMenuReuniao() {
setTodosFalse();
this.menuReuniao = true;
}
public boolean isMenuControleReuniao() {
return menuControleReuniao;
}
public void setMenuControleReuniao() {
setMenuReuniao();
this.menuControleReuniao = true;
}
public boolean isMenuPainelReuniao() {
return menuPainelReuniao;
}
public void setMenuPainelReuniao() {
setMenuReuniao();
this.menuPainelReuniao = true;
}
public boolean isMenuTipoAfastarCadastro() {
return menuTipoAfastarCadastro;
}
public void setMenuTipoAfastarCadastro() {
setMenuCadastro();
this.menuTipoAfastarCadastro = true;
}
public boolean isMenuConfiguracaoVoz() {
return menuConfiguracaoVoz;
}
public void setMenuConfiguracaoVoz() {
setMenuConfiguracao();
this.menuConfiguracaoVoz = true;
}
public boolean isMenuConfiguracaoConfiguracao() {
setMenuConfiguracao();
return menuConfiguracaoConfiguracao;
}
public boolean configuracaoConfiguracaoMenu(){
setMenuConfiguracao();
return menuConfiguracaoConfiguracao;
}
public void setMenuConfiguracaoConfiguracao() {
this.menuConfiguracaoConfiguracao = true;
}
public boolean isMenuConfiguracaoMesa() {
setMenuConfiguracao();
return menuConfiguracaoMesa;
}
public void setMenuConfiguracaoMesa() {
this.menuConfiguracaoMesa = true;
}
public boolean isMenuConfiguracaoMicrofone() {
setMenuConfiguracao();
return menuConfiguracaoMicrofone;
}
public void setMenuConfiguracaoMicrofone() {
this.menuConfiguracaoMicrofone = true;
}
public boolean isMenuConfiguracaoGeralVotacao() {
setMenuConfiguracao();
return menuConfiguracaoGeralVotacao;
}
public void setMenuConfiguracaoGeralVotacao() {
this.menuConfiguracaoGeralVotacao = true;
}
}