Cara, o método que você chama no evento ta retornando como?
return “”;
ou
return"Nome da página no faces";
Porque você tem que retornar assim -> return “”;
ou até mesmo chamar um método void.
joaosavio
vou tentar retornando “”
mas para o JSF qual a diferenca?
2
22-Gers
Cara, a diferença é que retornando “”, você continua na mesma página eu não altera o focus, se vc chamar a página com o nome dela do faces, ele carrega ela denovo e muda o focus.
Depois avisa aqui se vc conseguiu.
joaosavio
quando retorno “”, o evento nao ocorre se eu nao clicar em “enter”!
2
22-Gers
cara, muito estranho. Eu uso esse componente com o mesmo evento que você, e o método que ele chama retorna “”, sem problemas. Dê uma olhada no seu form, se tem mais alguma coisa relevante que possa estar dando problema como painéis desnecessários e alguma coisa do tipo. Se preciso, faça uma página separada, e uma classe também, que teste esse recurso isoladamente.
t+
joaosavio
olá
deu certo
o problema agora é que o evento nao pode fazer nada se nao estiver escrito nada. Como fazer isso?
cara, posta seu código com o método pra eu dar uma olhada. Você vai ter que tratar essa excessão para funcionar, mas depende de como o seu método está funcionando.
publicStringbuscaPorNome(){BConsultaPessoaBConPes=newBConsultaPessoa(); BConPes=(BConsultaPessoa)ManagedBean.getContextInfo("#{consultaPessoa}"); //pego o bean da sessãoif(BConPes.getNome.equals("")||BConPes.getNome==null)//façaumifparatrataraexcessão,devedarcerto.
returnnull;...............
}
esse teste faz com que se o valor no input for nulo ou “” (vazio)" o método retorna null, sem executar o script. Isso deve resolver seu problema.