JSF - Executar método automaticamente

Pessoa,

Na minha aplicação JSF tenho um commandButton que executa um determinado método.

<h:commandButton value=“OK” styleClass=“botao” action="#{LoginBean.executar}" />

Gostaria de executar esse método automativamente quando entrar em uma página, sem precisar clicar em um botão, ou em algum link, algo similar ao que o javascript faz, quando posso mandar executar uma ação.

Tem alguma tag jsf para isso?

klebergf

Você pode chamar o método desse bean usando scriptlet, no começo na sua jsp.
Dúvidas, poste aí fera.

Flws!

[quote=schmidt]klebergf

Você pode chamar o método desse bean usando scriptlet, no começo na sua jsp.
Dúvidas, poste aí fera.

Flws![/quote]
desculpe a forma meio ignorante de responder, mas se o cara fizer isto tem que mandar prender ele …

O JSF puro não tem este recurso, mas frameworks como o Spring-Annotation e o JBoss Seam tem uma forma mais bonitinha de implementar isto, usando anotações, e o conceito de factories …

Concordo,

Realmente não é solução mais sofisticada pro problema.
Mas aí obrigar o cara a usar um desses frameworks …

Sou totalmente a favor das boas práticas, nesse caso, eu interpreto como exceção e colocaria sim, 1 linha de scriplet pra invocar meu método. Se vc sabe o que está fazendo, não vejo problema.

klebergf, outra coisa, vc está precisando disso para sua primeira página da aplicação?
Se não for a primeira, invoque esse método a partir de outra action.

Flws!
Schmidt

dependendo do que você quer fazer uma solução (não mto bonita também) q eu ja utilizo funciona.

No metodo get de algum dos atributos do managed bean, faça uma conferencia e chame o método

public String getAlgo(){
if (algo == null) {
metodo();
}
return algo;
}