Apache Struts

Un article de Wikipédia, l'encyclopédie libre.

Apache Struts est un framework libre pour développer des applications web J2EE. Il utilise et étend l'API Servlet Java afin d'encourager les développeurs à adopter l'architecture Modèle-Vue-Contrôleur. Apache Struts a été créé par Craig McClanahan et donné à la fondation Apache en mai 2000. Aujourd'hui, Struts fait partie du projet Jakarta.

Cette infrastructure permet la conception et l'implémentation d'applications Web de taille importante et d'être gérées par différents groupes de personnes. En d'autres termes, les designers, développeurs de composants logiciels peuvent gérer leur propre part du projet de manière découplée.

Struts permet la structuration d'une application Java sous forme d'un ensemble d'actions représentant des événements déclenchés par les utilisateurs de l'application. Ces actions sont décrites dans un fichier de configuration de type XML décrivant les cheminements possibles entre les différentes actions. En plus de cela, Struts permet d'automatiser la gestion de certains aspects comme par exemple la validation des données entrées par les utilisateurs via l'interface de l'application. Plus besoin de venir coder le contrôle de chaque donnée fournie par un utilisateur, il suffit de décrire les vérifications à effectuer dans un fichier XML dédié à cette tâche.

En utilisant Struts, le développeur simplifie son travail au niveau des vues et des contrôleurs du modèle MVC. Mais il serait inadapté d'utiliser ce framework dans des projets de petite taille car il introduit une certaine complexité. Struts montre toute sa puissance dans des applications d'une certaine envergure.

C'est un logiciel libre distribué selon les termes de la licence Apache.

[modifier] Concurrents

Bien que Struts soit une application mature et correctement documentée, elle fait face à de nouvelles infrastructures MVC plus légères telles que Spring, Apache Tapestry ou JSF.

En décembre 2005, Struts a joint ses forces avec un autre cadriciel J2EE populaire, WebWork. Webwork est adopté comme la version 2.0 d'Apache Struts. Webwork a été dérivé de Struts il y a plusieurs années, et offre de nombreuses améliorations, tout en gardant la même architecture générale.

Parmi les autres cadriciels MVC non basés sur Java, on peut citer Django, Catalyst et Turbogears.

[modifier] Voir aussi

[modifier] Liens externes