| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 31/01/2010 21:10:19
|
hlegius
JavaChild
![[Avatar]](/images/avatar/0f20c77d6afb02422603acb0329b5a41.jpeg)
Membro desde: 07/05/2006 14:29:25
Mensagens: 114
Localização: Guarulhos, SP
Offline
|
Salve !
Tenho um cenário simples, mas que me deixa com dúvidas:
Há uma Action. A responsabilidade dela é cadastrar um usuário. Então seguindo um fluxo básico:
1. Ela recebe o evento da tela (submit do form)
2. Recebe os parameters - considerando uma ServletResponse mesmo
3. Chama o repository - ou o container, enfim...
4. executa um repository.adiciona(new User(...))
5. Verifica se adicionou e então salva session
5.0.1 manda pra outra página (de logado) [fim]
5.1. Em caso de falhas pegue-as e salve no request.setAttribute() para mandar ao usuário
5.1.1 exibe a página de falha [fim]
Sem contar que essa mesma action pode ser também o caminho para abertura da página (sem o post do formulário) tornando as coisas meio bagunçadas na pobre action.
Daí o que eu fiz ? Criei um:
que executa os passos quando o botão do post for acionado. Ficou bem limpo, legal. Mas e quando essa Action possuir tantos outros métodos ? Continuará a mesma bagunça !
Não faz sentido o uso de Services, pois é request.getParameter() pra todo lado. É "interface", não é domínio ainda.
Seguir a ideia original do Servlet - um Servlet para cada JSP, para mim é loucura - tanto que os frameworks abstraem isso para tornar uma Action por módulo =P (e dale web.xml também)
Eu pensei uma Facade. Sei lá, funcionaria e eu poderia ter uma Facade por módulo. Por hora não tenho mais ideias... talvez eu esteja até, viajando :/
Sugestões ?
Abraços !
|
http://programe.me
Zend Certified Engineer
ArchLinux - A simple lightweight Linux Distribution |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/02/2010 09:55:46
|
Fierodd
Thread.start()
![[Avatar]](/images/avatar/afb79a9be5cd9762572a008088d3153e.jpg)
Membro desde: 09/04/2005 22:34:46
Mensagens: 39
Offline
|
Olá ... não sei se entendi direito a dúvida ... caso vc permaneça com a estrategia de uma action por módulo vc continuaria adicionando métodos pertinentes à usuários a essa action correto?
por exemplo, métodos como deletaUser(...) ou atualizaUser(...)
cada método com uma tarefa específica, aglutinados numa mesma action.
Qual o problema que vc está enfrantando nessa abordagem? Não entendi sua idéia do Facade, seria pra realizar a chamada correta a cada um desses métodos?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/02/2010 15:05:33
|
hlegius
JavaChild
![[Avatar]](/images/avatar/0f20c77d6afb02422603acb0329b5a41.jpeg)
Membro desde: 07/05/2006 14:29:25
Mensagens: 114
Localização: Guarulhos, SP
Offline
|
Então, o problema é que em alguns módulos a action fica imensa hahaha !
Mas eu acho que é brisa minha mesmo :/
A ideia da facade seria limitar não aglomerar muito as coisas na action, mas acho que daria na mesma no final das contas...
|
http://programe.me
Zend Certified Engineer
ArchLinux - A simple lightweight Linux Distribution |
|
|
 |
|
|