dúvidas com actions no ww

7 respostas
K

Olá…

Estou meio consfuso em como projetar minhas actions.
Em uma aplicação que tem: cadastro,exclusão,alteração e inserção;
É melhor eu criar uma action para cada funcionalidade :

AlterarAction
InserirAction
etc…

???

Como vcs fazem esse tipo de aplicação ???

Obrigado pela atenção.

:smiley:

7 Respostas

L

Tudo depende de como você projetar a sua aplicação.

Eu desenvolvo da seguinte maneira:

  • Uma action para Inserção e Alteração
  • Uma action para pesquisa
  • Uma action para exclusão

Com certeza, tu irá ter um monte de exemplo durante o desenrolar deste tópico.

Cabe a ti buscar a melhor forma de estruturar tudo isso. :wink:

Z

Eu prefiro basear a action no modelo e colocar os métodos que trabalham com esse modelo em uma classe só. Por exemplo, uma action seria UsuarioAction e teria os métodos inserir(), pesquisar(), excluir() e etc.

Daí, é só configurar no xwork.xml actions diferentes apontando para a classe, mas chamando métodos diferentes.

K

ZehOliveira:
Eu prefiro basear a action no modelo e colocar os métodos que trabalham com esse modelo em uma classe só. Por exemplo, uma action seria UsuarioAction e teria os métodos inserir(), pesquisar(), excluir() e etc.

Daí, é só configurar no xwork.xml actions diferentes apontando para a classe, mas chamando métodos diferentes.

interessante… e como posso configurar isso no xwork.xml ???

alguém tem mais alguma dica ???

Obrigado pessoal…

Z

No seu xwork.xml,

<action name="..." class="..." method="nomeDoMetodo"> . . . </action>

_fs

Para coisas muito simples pode fazer algo como:

Pessoa p; // populado quanto a action é chamada
public String execute() {
    Integer id = p.getId();

    if( id == null )
        dao.create( p );
    else if( id.intValue() < 0 )
        dao.delete( p );
    else
        dao.update( p );
}

Mas qualquer coisa levemente além disso não compensa hehe

Z

LIPE, não é necessário instanciar o objeto não? (Pessoa p = new Pessoa() ??)

_fs

WW faz isso pra você :smiley:

Criado 24 de maio de 2005
Ultima resposta 25 de mai. de 2005
Respostas 7
Participantes 4