Tem gente que critica o Struts 1.x apenas pq outros dizem que ele e´ “chatinho” sem ao menos saber qual é a chatisse. E maria-vai-com-as-outras! poderiam pelo menos dar um motivo de chatisse, como por exemplo, fazer testes. Ai sim, tudo bem…
quanto ao struts 2 (webwork), muito bom mesmo! Além de ‘consertar’ os problemas do 1.x, adiciona novas boas idéias.
Gostei muito da sua opinião. Bastante sensata. Realmente em projetos legados o struts é sem dúvida dominante. Vc mencionou o Flex, o papel dele é fazer tbém a parte Controller da aplicaçao, assim como o struts e JSF? Ou vc citou apenas como um das tecnologias usadas no momento?
Abraços [/quote]
Bruno,
Citei o Adobe Flex porque é uma tecnologia bastante madura para criação de experiências ricas para a WEB (as famosas RIAs) rodando sobre a engine do Flash 9, com resultados impossíveis de serem alcançados com HTML e mesmo AJAX. Seu uso é voltado para a camada de apresentação, ao contrário de alguns frameworks MVC populares como o Struts.
Uma aplicação Flex pode conectar-se aos serviços de retaguarda através do Flex Data Services (uma solução proprietária) ou consumir Web Services diretamente.
Para maiores informações, aponte seu browser para:
Não gosto do Struts 1, mas a maioria dos projetos com que já trabalhei usa-o. Não gosto pelas seguintes razões:
segue o mesmo paradigma de desenvolvimento da época do Perl (recebe request->executa lógica->renderiza resposta). Aquele action.execute(…) é tosco;
não possui componentes de fato. Ele tem apenas taglibs meia-boca;
força o desenvolvedor a declarar tudo e mais um pouco no struts-config. Isso enche o saco e não faz sentido algum porque qualquer alteração que você precise fazer exigirá necessariamente um redeploy;
força o desenvolvedor a criar classes apenas para o framework, por exemplo Action e FormBean;
Resumindo, força o desenvolvedor a trabalhar como um camelo por quase nada.
Edit: Quase esqueci da razão mais importante para se odiar Struts. Ele é um wrapper muito do safado em volta de Servlets, que não adiciona quase nada a mais do que se você trabalhasse diretamente com JSP/JSTL/Servlet.