JSF - botões e links que não chamam o navigation rule

4 respostas
lucashungaro

Tenho uma página de consulta feita em JSF que tem os botões consultar, incluir e excluir (para exclusão múltipla).

O botão incluir apenas chama um método que retorna o navigation rule pra página de cadastro, e funciona. Porém, ao clicar no botão excluir ou no link do datatable (pra chamar a alteração do registro) a página de consulta é simplesmente recarregada, como se eu estivesse acessando-a novamente (o dataTable nem aparece).

Código do botão incluir (que funciona):

<h:commandButton action="#{lecCidade.incluir}" value="#{bundle['btn.incluir']}" styleClass="pForm" />

Código do botão excluir (não funciona):

<h:commandButton rendered="#{lecCidade.markedToShow}" action="#{lecCidade.excluirMult}" value="#{bundle['btn.excluir']}" styleClass="pForm"/>

Código do link no dataTable (tbm não funciona):

<h:commandLink action="#{lecCidade.alterar}">
          	<h:outputText value="#{cidade.codCidade}"/>
	<f:param name="cod_cidade" value="#{cidade.codCidade}" />
     </h:commandLink>

Atributos do dataTable:

<h:dataTable rendered="#{lecCidade.markedToShow}"
        id="lecCidadeLis"  value="#{lecCidade.consulta}" var="cidade" 
        rows="#{lecCidade.noOfRows}" 
        first="#{lecCidade.firstRowIndex}" 
        rowClasses="even,odd" width="100%">

O managed bean chama-se lecCidade e possui os métodos alterar, incluir e excluir, entre outros.

Alguém sabe porque ele nem sequer entra no método do managed bean (coloquei uns prints pro console no início do método pra verificar isso e nada)?

4 Respostas

Anderson_Schmidt
Em casos onde uma action não é chamada, costuma-se verificar os campos obrigatórios. Depois, esse botão Excluir não está em um <h:fom> separado?

Pelo que vc disse, ele está chamando a action sim, pq a página é recarregada, agora vc precisa checar de qual form é a action que ele está chamando.

Schmidt

lucashungaro

Todos os botões e o link estão no mesmo form.

A action não está funcionando porque ela retorna um navigation rule que deve ir para outra página e não recarregar a mesma. :roll:

lucashungaro

Alguém sabe alguma solução pra isso ou pelo menos uma forma (checklist, rastreamento…) pra verificar se fiz algo errado?

Não sei mais o que olhar aqui…

Anderson_Schmidt

Sua .jsp é muito extensa??

Cola ela aí…

Criado 8 de agosto de 2006
Ultima resposta 10 de ago. de 2006
Respostas 4
Participantes 2