Maîtrisez l’intégration de Spring et Struts en utilisant l’injection de dépendances, concept technique clé mis en œuvre dans notre tutoriel Spring N°2. Utilisez la classe DelegationActionProxy pour faire de vos actions Struts des beans Spring et profitez ainsi de la richesse de Spring.
Objis, spécialiste de la formation Java, est heureux de vous offrir ce
tutoriel, extrait de séances pratiques de notre formation SPRING.
Les + objis
70% de travaux pratiques
Clé USB avec tous les outils utilisés + Corrigés TPs
Bilan pédagogique individuel + conseils
Liens utiles
+ de 100 tutoriaux java/jee Objis
10 tutoriaux spring framework objis
Objis, spécialiste formation java depuis 2005
Site officiel Spring IDE
Site officiel Spring Source Tool Suite (STS)
Javadoc API Spring 2.5
Documentation de référence Spring 2.5 / Intégration autres frameworks
Prérequis, outils et versions
JDK 6
Eclipse 3.3.2 europa Entreprise
Spring 2.5.4
Spring IDE 2.1.0
Tutoriel Spring N°2 : injection de dépendances
Pour ce Tutoriel, le plugin Eclipse Spring IDE doit être au préalable correctement installé. Le tutoriel ‘Installation plugin Spring IDE’ vous permet de maîtriser l’installation de Spring IDE.
Objectifs
Comprendre la stratégie d’intégration de Spring avec le framework Struts et la valeur ajoutée du duo spring / struts.
Mettre en oeuvre technique de délégation d’action (classe Spring DelegationActionProxy fournie par Spring), permettant de faire d’une action Struts un bean Spring .
Formation Architecture Java
Soyez prêt pour des projets ambitieux : formation architecture Java Objis
Programme
Introduction : l’application à créer
Partie 1 : création projet Eclipse et config. Spring
Partie 2 : Création de la page de login et actions struts
Partie 3 : test
Durée
30min.
Qui sommes-nous ?
Introduction : l’application à créer
Dans cette partie, nous allons implémenter une application qui intègre les frameworks struts et spring en utilisant le plugin Struts ContextLoaderPlugin et la classe DelegationActionProxy de Spring
L’application est très simple. Elle contient deux écrans:
— un écran d’authentification pour saisir le login et le mot de passe et
— une deuxième écran qui s’affiche en cas de «success» de l’authentification.
Partie 1 : création projet Eclipse
Créez un projet ‘web dynamique’ nommé ‘demospringstruts’. Le schéma ci-dessous présente la structure de l’application dans Eclipse.
Dans ce qui suit nous allons décrire « pas à pas » la création de l’application.
Ajout de librairies Spring et Struts au projet
Ajoutez les librairies nécessaires dans le répertoire ‘WEB-INFlib’.
pour struts :
struts.jar , présent dans répertoire libstruts du zip de Spring
ajouter les librairies commons-beanutilss.jar ,
commons-logging, commons-digester.jar et commons-collections.jar , présentes dans libjakarta-commons de Spring
pour spring :
ajouter spring.jar , présent dans répertoire dist du zip de Spring
ajouter spring-webmvc-struts.jar , present dans distmodules de Spring
Modification du web.xml
Mettez à jour le web.xml avec les éléments suivants
Création de action-servlet.xml et de ApplicationContext.xml
REMARQUE : si vous nommez votre controleur Struts ‘action’ (Servlet Actionservlet dans le web.xml), alors le plugin Spring s’attend à trouver un fichier nommé ‘action-servlet.xml’, comme fichier de définition de beans.
A travers l’assistant de création de fichier de définition de beans, créer le fichier de configuration action-servlet.xml , qui regroupera les beans Spring, dont le bean ActionLogin:
Créez également le fichier ApplicationContext.xml :
Création de struts-config.xml
Partie 2 : Création de la page de login et actions struts
Login.jsp : permet à l’utilisateur de s’authentifier en fournissant login et mot de passe. Ces informations seront récupérées par l’action struts LoginAction
Création des actions
LoginAction.java : permet de récupérer le login et le mot de passe ensuite utilise un UserManager pour vérifier leur validité. La dépendance entre l’action LoginAction et la classe UserManager est gérée par spring en utilisant l’injection de dépendance.
LogOutAction.java : permet de retourner à la page de login.
Création de la classe User
Créez un package com.objis.domaine
Dans ce package, créez un javabean qui contient les attributs login et password.
Création de la classe UserManagerImpl
La classe UserManagerImpl implémente l’interface IUserManager.
Cette classe possède la méthode getUser (String login, String password) qui permet de vérifier la validité du login et le mot de passe.
Pour simplifier l’application, la vérification du login et le mot de passe se fait en comparant respectivement le login et le mot de passe aux chaînes de caractères « login » et « objis».
Cependant, l’utilisation du service IUserManager permettra par la suite de modifier la vérification en ajoutant par exemple un accès à la base de données et ceci sans modifier le code des actions.
Partie 4 : test
Déployez via Eclipse l’application dans Tomcat6 (ou tout autre serveur moteur de servlets).
pointez votre navigateur Eclipse vers l’URL : http://localhost:8080/login.do . Vous obtenez l’écran suivant :
Entrez « login » et « objis», puis validez.
Mission accomplie !
Correction
Correction tutoriel integration spring/struts
Conclusion
Dans ce tutoriel, nous avons exposé comment intégrer les deux frameworks struts et spring dans une même application : comment récupérer les beans dans une action struts, comment configurer les actions struts comme étant des beans gérés par spring et bénéficier de l’injection de dépendance.
Spring sait donc s’interfacer avec un framework de vue comme Struts, mais aussi JSF et d’autres frameworks coté clients RIA comme GWT (via BlazeDS).
Mais que propose Spring pour les développeurs n’ayant aucune experience en développement d’écrans/vues web ? La réponse est : SpringMVC
Découvrez en particulier notre tutoriel Spring N°9 : introduction à Spring MVC.
Formation Architecture Java
Soyez prêt pour des projets ambitieux : formation architecture Java Objis