Actions do WW como parte do modelo

Aqui onde trabalho, definimos uma arquitetura para ser usada nos projetos e possibilitar reuso de codigo entre tais projetos e entre possiveis parceiros. Fiz uma pequena descrição de como é em http://www.javafree.com.br/forum/viewtopic.php?t=9509

Agora, enquanto escrevo algumas actions para do WW vi que tanto os managers quanto a facade podem cair fora. Isso se eu tornar as actions como parte do modelo, que é o mais provavel visto que o ModelDriven do WW ajuda um bocado. Em alguns outros frameworks para MVC como o Struts, seria estranho colocar chamadas para os DAO’s, por exemplo, direto nas actions, mas no caso do WW isso parece extremamente normal. Então, gostaria de saber a opinião de vcs sobre. Ter as actions como parte do modelo é bom, ruim ou o que? Quais as principais implicações?

O que quero é poder eliminar manager e facade e escrever Awares para injetar os DAOs de cara.

valeuz…

Fiz um projeto com struts e agora estou estudando ww, cheguei na mesma pergunta?
Estranho chamar o DAO do Action, mas …
E ae webworkeiros?

Eu não chego a achar estranho, visto que nas Actions do WebWork eu tenho uma serie de coisa como validators, interceptors entre outras que podem ser bem uteis as minhas regras de negocios. Minha duvida é sobre o impacto que colocar a action como parte do model pode ter.

valeuz…

Use Actions ModelDriven, se a feiura for o problema :wink:

Carlos, já uso actions model driven e foi daí que surgiram as duvidas. Elas são mais produtivas, a meu ver, e tornam a action parte do modelo como um todo. Então, quais os impactos de liga-las mais fortemente aos DAOs, por exemplo? Acho que a resposta para essa pergunta está num post seu:

[quote=“cv”]O caso eh que quando vc esta usando Struts, a Action eh praticamente um Servlet empacotadinho.

Já o XWork (base do WebWork2) permite que as suas Actions contenham regras de negócio sem prejudicar a arquitetura e nem tirar a flexibilidade do seu sistema. Dá pra usar XWork dentro de um EJB, ou numa app Swing, sem problemas…

Já que é assim, e já que as Actions não precisam fazer nada especial a não ser implementar a interface de marcação Action, não vejo pq não tornar a Action parte do seu modelo - coisa que, no Struts, seria prejudicial, no WebWork2/XWork é até uma boa prática. Usando Actions Model-Driven, ainda, fica mais fácil

Eu estou fazendo alguns experimentos com os interceptors do XWork aqui, e se der certo, vai ser possível usar as Actions como Transactions do Prevayler… ou seja, persistência totalmente transparente! [/quote]
valeuz…