0 Replies Latest reply on Mar 27, 2012 5:27 PM by phelen

    Context Menu RF 4.2.0

    phelen

      How can I use a contextMenu with dataTable? I'm using this way:

       

      <rich:dataTable ... >

      <rich:componentControl event="rowclick" target="menuContexto" selector="tabelaAcidentesGrupo" operation="show">

           <f:param noEscape="true" value="#{record.acidentesGrupo.id}" name="idGrupo"/>

           <f:param noEscape="true" value="#{record.acidentesGrupo.descricao}" name="nomeGrupo"

      </rich:componentControl>       

      </rich:dataTable>

                 

      <rich:contextMenu id="menuContexto" mode="ajax" >

           <rich:menuItem label="Filtrar SubGrupos pelo Grupo #{nomeGrupo}"

                   action="#{listaAcidentesGrupoBean.filtroSubGrupo}"  >

                <a4j:param  name="idGrupo" value="#{idGrupo}"

         </rich:menuItem>

      </rich:contextMenu>      

       

       

      But I cant Recover the params.

       

      public String filtroSubGrupo() {

             

              final boolean acessarSubGrupo = NivelAcessoUtil.getNivelAcesso(NivelAcessoUtil.ACIDENTESSUBGRUPO).isAcessar();

              String retorno = null;

                 

             

              if (acessarSubGrupo) {

                  final FacesContext context = FacesContext.getCurrentInstance();

                  final Map<String, String> attrs = context.getExternalContext().getRequestParameterMap();   

                 

                  if (attrs.get("idGrupo") != null) {

                     

                      ListaAcidentesSubGrupoBean cadBean = (ListaAcidentesSubGrupoBean) JSFUtils.getManagedBean("listaAcidentesSubGrupoBean");

                      cadBean.setGrupo(Long.parseLong(attrs.get("idGrupo")));

                      cadBean.pesquisar();

                  } else {

                      return null;

                  }

                 

                  retorno = "listaAcidentesSubGrupo";

                 

              } else {

                  Mensageiro.errorMsg("msg.semPermissaoAcesso", " para os SubGrupos de Riscos");           

              }   

             

              return retorno;

          }

       

      They came empty. I't worked on 3.3.3