Développons en Java avec Eclipse v 0.80 | ||||||
Copyright (C) 2003-2007 Jean-Michel DOUDOUX |
Struts est un framework pour applications web développé par le projet Jakarta de la fondation Apache. C'est la plus populaire des frameworks pour le développement d'applications web avec Java .
Struts met en oeuvre le modèle MVC 2 (Modèle / Vue / Contôleur) basé sur une seule servlet et des JSP pour chaque application. L'application de ce modèle permet une séparation en trois partie distinctes de l'interface, des traitements et des données de l'application.
Struts se concentre sur la vue et le contrôleur. L'implémentation du modèle est laissée libre aux développeurs : ils ont le choix d'utiliser des java beans, un outil de mapping objet/relationnel ou des EJB.
Pour le contrôleur, Struts propose une unique servlet par application qui lit la configuration de l'application dans un fichier au format XML. Cette servlet reçoit toutes les requêtes de l'utilisateur concernant l'application. En fonction du paramètrage, il instancie un objet de type Action qui contient les traitements et renvoie une valeur particulière à la servlet. Ceci lui permet de déterminer la JSP qui affichera le résultat à l'utilisateur.
Il existe un projet open source nommé Easy Struts qui est un plug-in dont le but est de faciliter la mise en oeuvre de Struts avec Eclipse. Ce plug-in très intéressant et pratique ne semble malheureusement plus évoluer : il ne fonctionne d'ailleurs pas avec les versions 3.x de d'Eclipse.
Cette section va mettre en oeuvre les outils suivants sous Windows :
Outil |
Version |
Rôle |
JDK |
1.4.2_03 |
|
Eclipse |
2.1 | IDE |
Tomcat |
5.0.28 |
conteneur web |
plug-in Tomcat de Sysdeo |
3 |
arrêt et démarrage de Tomcat |
plug-in Easy Struts |
0.6.4 |
faciliter l'utilisation de Struts |
Le site officiel du plug-in Easy Struts est à l'url : http://easystruts.sourceforge.net/
Ce plug-in permet notamment de faciliter la réalisation de certaines tâches et la création des éléments suivants :
Il y a deux façons pour installer Esay Struts :
Editez les préférences (menu Fenêtre/Préférences) et sélectionnez Easy Struts.
L'onglet « Style » permet de définir des comportements par défaut.
L'onglet « Struts 1.0 » et « Struts 1.1 » permet de fournir l'emplacement requis par la version de Struts désignée par l'onglet.
Il faut impérativement ajouter les fichiers .jar requis pas Struts ainsi que les fichier .tld des bibliothèques personnalisées de Struts.
Une fois tous les paramètres renseignés, cliquez sur le bouton « Appliquer » puis sur le bouton « OK ».
Il faut créer un projet de type « Java/Projet Tomcat » qui va contenir l'application web.
Cliquez sur le bouton « Suivant »
Saisissez le nom du projet, par exemple « test_struts » et cliquez sur le bouton « Suivant ».
Cliquez sur le bouton « Fin »
La structure du projet est la suivante :
Il faut sélectionner les propriétés du projet. Sélectionnez l'option « Easy Struts »
Cliquez sur le bouton « Add Struts support to project ... ». Une boîte de dialogue s'ouvre pour permettre la sélection des options
Si les paramètres ne sont pas correctement renseignés, un message d'erreur est affiché
Il saisir les informations nécessaire à la configuration de l'application.
Renseignez les informations nécessaires et cliquez sur le bouton « Fin ». Les fichiers sont copiés et les propriétés sont mises à jour.
Cliquez sur le bouton « OK ».
Le fichier web.xml généré est le suivant :
Exemple : |
|
Le fichier struts-config.xml généré est le suivant :
Exemple : |
|
La structure du projet est alors la suivante :
Il faut ensuite créer une nouvelle entité de type « Java / Easy Struts / Easy Action associated with form ».
Cliquez sur le bouton « Suivant ». La page suivante permet de renseigner les caractéristiques de la page.
Renseignez le « Use case » avec le nom logique de la page, par exemple « Login ». Automatiquement les champs Form name et Form Type sont pré-renseignés en fonction du « Use Case » saisi et des propriétés saisies pour Struts.
Pour ajouter des propriétés, il suffit de cliquer sur le bouton « Add »
Il suffit alors de renseigner les caractéristiques de la donnée : le nom, le type, la valeur initiale et le mode de saisie dans la JSP.
Pour valider chaque donnée, il faut cliquer sur le bouton « OK ». Une fois la saisie terminée, il faut cliquer sur le bouton « Fin ».
Dans l'exemple de cette section, deux données sont ajoutées :
Cliquez sur le bouton « suivant »
La page suivante permet de saisir les renseignements sur la classe Action qui sera générée.
Les divers renseignements saisis vont permettre de créer la JSP et de modifier le fichier struts-config.xml
Une fois les données saisies, cliquez sur le bouton « Suivant ».
La page suivante permet de préciser les renvois et les captures d'exceptions associés pour l'Action.
Pour ajouter un renvoi (forward), il faut cliquer sur le bouton « Add » correspondant.
Il faut alors saisir le nom et le chemin du renvoi.
Une fois les renvois ajoutés, cliquez sur le bouton « Fin ».
Si nécessaire, procédez de la même façon avec les captures d'exceptions.
Cliquez sur le bouton « Fin ».
Le fichier struts-config.xml est modifié pour tenir compte des éléments paramétrés dans l'assistant.
Exemple : |
|
Le fichier login.jsp est créé dans le répertoire form
Exemple : |
|
Il faut modifier le fichier LoginForm.java pour mettre le code à exécuter lors de la validation des données dans la méthode validate() à la place de la levée de l'exception de type UnsupportedOperationException
Exemple : |
|
Il faut ajouter une clause d'importation sur la classe org.apache.struts.action.ActionError
Il faut modifier le fichier LoginAction.java pour mettre le code a éxécuter lors des traitements dans la méthode execute() à la pace de la levée de l'exception de type UnsupportedOperationException
Exemple : |
|
Il faut modifier le fichier ApplicationResources.properties se trouvant dans le repertoire WEB-INF/classes/com/jmd/test/struts
Exemple : |
|
Il ensuite créer une nouvele entité de type type « Java / Easy Struts / Easy Form » dont le « Use Case » sera « Accueil ».
Il faut modifier le fichier form/accueil.jsp généré.
Exemple : |
|
Les fichiers composants l'application sont les suivants :
Il faut lancer Tomcat en cliquant sur le bouton
Un clic sur le bouton « Submit » sans saisir de nom affiche le message d'erreur
La validation avec un nom différent de test réaffiche la page
La validation avec le nom « test » et le mot de passe « test » affiche la page d'accueil
EasyStrusts propose un éditeur dédié à la mise à jour du fichier de configuration de Struts
Cet éditeur propose deux onglets : « Easy Struts » pour modifier les informations avec une interface et « Source » qui permet de visualiser et de modifier directement le fichier xml.
L'onglet « Easy Struts » de compose de deux parties :
La partie de gauche permet une navigation dans les élements qui composent le fichier xml et la sélection d'un élément.
La partie de droite permet de modifier l'élément sélectionné.
Développons en Java avec Eclipse v 0.80 | |||||||
Copyright (C) 2003-2007 Jean-Michel DOUDOUX |