Action é a classe que representa um caso de uso. Recebe as entradas enviadas pelo usuário (input), realiza um processo ao um fim retorna um resultado (output) para a consequência retornada.
Estas são as ações que representam casos de uso simples (NÃO-CRUDs). LoginAction, ProtectedAction e FreeAction. Recomenda-se que para estas actions sejam usados um a dois métodos públicos, dependendo do caso.
public class SelecionaTurma extends FreeAction { /** O método execute() como mostrado a seguir já existe na hierarquia das Actions do Futurepages, * sendo desnecessário, já que sobrescreve o método execute() da classe FreeAction com a mesma implementação. * Nesse caso bastaria somente sobrescrever o método listDependencies() */ public String execute() { listDependencies();//joga na saída as dependências de tela, neste caso a lista de todas as turmas. return SUCCESS; } @Override private void listDependencies() { output.setValue("turmas", Dao.list(Turma.class, null, null)); } //Submete a principal funcionalidade da Action. public String submit(int turmaId) { TurmaServices.selecionaTurma(Dao.get(Turma.class, turmaId)); return SUCCESS; } }
<a href="Logout.fpg">Realizar Logout</a> <a href="SelecionaTurma.fpg">Selecionar Turma</a> <form action="SelecionaTurma.submit.fpg"> ... </form>
action("AlteraSenha",AlteraSenha.class); action(DistribuiProcesso.class); //opção que pega o nome por reflexão
action("Aluno",AlunoActions.class); //Action de Crud do bean Aluno .filter(new VOFilter("aluno", Aluno.class)) .on(UPDATE, fwIn("Aluno.update.page")) .on(SUCCESS, UPDATE, fwIn("Aluno.update.page")) .on(ERROR, UPDATE, fwIn("Aluno.update.page")) ;
<form action="Aluno.update.fpg"> ... </form>
em breve...
em breve...