Stripes: O Framework web para quem tem mais o que fazer.

Estou trabalhando em um projeto, freelance, que pode ser resumido a meia dúzia de cadastros e uma de relatórios. Iremos utilizar uma interface web baseado no trio Struts+Tiles+Validator e JPA sobre Hibernate para mapeamento O/R .
A equipe, de três pessoas, possui um bom relacionamento com Struts+Tiles+Validator, até gostamos muito do trio. Mas os xmls necessários nos irritam um pouco por conta dos frequentes merges, no servidor de versões, durante a fase de desenvolvimento. Para mitigar o problema usaremos o XDoclet para gerar os xmls a partir de comentários JavaDoc nas classes Action e ActionForm.

Mas ainda tinha um problema:

  • Por não gostar dos XMLs do Hibernate, o framework de mapeamento O/R foi substituido. Já que odeiamos os XMLs do Struts então por que usar uma alternativa sem xml?

Primeiro me aproximei do Spring MVC. Interessante. As funcionalidades eram as que eu estava procurando. Mas também tem um xml de configuração, então esquece.

Então olhei o Mentawai, mas ele trocava o XML por uma classe Java. O que já é um ganho, visto que o compilador pode ajudar e dá para fazer hot-deploy no Tomcat. Mas ainda assim, não era isso que eu queria. Continuava tudo em um arquivão central de configuração.

Continuando a busca, vi um tópico no GUJ sobre um framework MVC que utilizava annotations para configuração, Stripes era o nome. Mesmas funcionalidade do Struts, sem xml, prefere convenções à configurações, as configurações ficam nas classes actions… Parece legal, fui dar uma olhada…

O Stripes é um Struts+Tiles+Validator sem os arquivos XML de configuração. E não será necessário usar o XDoclet, porque não tem nada para ser gerado 🙂

Mais do que substituir ele procura não exigir configurações. Dando ênfase as convenções. Permitindo, inclusive, modificar essas convenções.

Após os testes, migrei o que já tinha sido feito na aplicação e estamos usando este framework. Após 5 minutos explicando como funciona o novo framework e 25 minutos acompanhando o desenvolvimento de um exemplo, os desenvolvedores superaram a produtividade que tinham com a combinação Struts+Tiles+Validator.

A documentação oficial tem espaço para melhorias(não é feita em um wiki por acaso), mas é possível sobreviver com o que se acha na internet:

[],
AC