Mettez en œuvre une stratégie simple de redirection web. Positionnez le RequestDispatcher de de jee comme contrôleur dans votre architecture MVC applicative. Faîtes communiquer vos JSP et servlets et créez des applications web en Java sans éprouver le besoin de connaître des frameworks type Struts , JSF, Spring MVC, Wicket.
Dans le tutoriel suivant, vous apprendrez comment faire une mise en session
Objis : spécialiste JAVA depuis 2005
Touchez du doigt notre approche pédagogique (70% de pratique) à travers ce tutoriel. Comme nos clients, contactez-nous (contact@objis.com) pour vos besoins en assistance technique ou en formations sur mesure dans nos locaux, dans vos locaux ou à distance.
ASTUCE –> Soyez informé de la mise à jour de nos tutoriels ou de la création de nouveaux tutos.
Prérequis
Intégration Tomcat dans Eclipse
Création d’un projet web dynamique
Votre première application j2ee
Votre première servlet
Votre première jsp
Liens utiles
+ de 100 tutoriaux java/jee Objis
Vos premiers pas de programmeur JEE
Objis, spécialiste formation java depuis 2005
Catalogue formations Objis
Objectifs
Introduction au pattern MVC
Codage d’une redirection web en utilisant le RequestDispatcher
Programme
Introduction : Introduction
Partie 1 : formulaire et récupération des infos
Partie 2 : Codage de la redirection
Partie 3 : Refactoring gestion doGet() et doPost()
Partie 4 : Refactoring architecture logicielle
Conclusion
Durée
20 min
PUBLICITE : votre formation ‘Intégration continue’ avec Objis
Introduction
MVC (Modèle Vue Controleur) est le nom d’un design Pattern créé par Xerox dans les années 80 et adapté depuis dans plusieurs secteurs du génie logiciel. En particulier dans les application JEE.
— M = Modèle (Objets métier, web service, EJB…)
— V = Vue (Ce que l’utilisateur voit : HTML, JSP, Tiles…)
— C = Contrôleur (communication entre le modèle en la vue : servlet)
Objectif : créer des applications modulaires en séparant clairement la vue et le Modèle.
CONSEIL 1 : Ayez toujours le pattern MVC en tête lors de vos développements JEE.
CONSEIL 2 : Si vous devez créer une application JEE uniquement avec Servlets / JSP, utilisez le RequestDispatcher comme contrôleur (le C de MVC) : courroie de transmission entre 2 vues.
Exemple avec 2 écrans : Login.jsp et Accueil.jsp , lorsque l’utilisateur valide ses informations de login/pwd, une servlet (que vous allez créer !) va récupérer les informations utilisateur, effectuer le traitement de validation de ces informations et appeler le RequestDispatcher pour envoyer l’écran Accuiel.jsp en lui passant les paramétres utilisateurs .
Partie 1 : formulaire d’authentification
ATTENTION : hypothèse : vous avez créé un projet web dynamique, associé à un serveur d’application, et vous avez codé la Serlet MaServlet comme dans le Tutoriel ‘votre première servlet’
Vous allez ici créer un formulaire d’authentification dont les information login/pwd seront soumises à la Servlet qui sera chargée de,
1) Etape 1 : Récupération des paramètres de la requête
2) Etape 2 : Traitement métier (comparaison des entrées avec valeurs attendues)
3) Etape 3 : Réponse à l’utilisateur
Codage formulaire
Partie 2 : Codage de la redirection
Analysez le code suivant :
QUESTION :
En utilisant l’API JEE7, expliquez ce qu’est le RequestDispatcher
Expliquez la ligne 50 du code ci-dessus .
Expliquez la ligne 57 .
Partie 3 : Refactoring gestion doGet() et doPost()
Analysez le code suivant
Expliquez
Déployez dans Eclipse
validez :
Expliquez.
Correction
GestionFormations-RequestDispatcher-V1
Partie 4 : Refactoring architecture logicielle
Actuellement la Servlet réalise les opérations suivantes :
1) Etape 1 : Récupération des paramètres de la requête
2) Etape 2 : Traitement métier (comparaison des entrées avec valeurs attendues)
3) Etape 3 : Réponse à l’utilisateur
Nous souhaitons pouvoir décharger la servlet des opération de traitement métier en déplacant le code de traitement métier dans une couche service, matérialisée par une classe nommée ‘ServiceAuth’
créez un nouveau package com.objis.gestionformations.service
Proposez dans ce package un code pour la classe ‘ServiceAuth’ .
Comment faire communiquer la servlet avec la classe ServiceAuth ?
Expliquez les bienfaits de cette nouvelle architecture : maintenance et fexibilité
CORRECTION : V2
GestionFormations-RequestDispatcher-V2
Partie 4 : Architecture en couche : Présentation + Service + domaine + Dao
Continuez le refactoring en proposant une architecture en couche complète, de la couche présentation à la base de données en passant par la couche service et la couche Dao.
Inspirez vous éventuellement de l’exemple projet :
GestionFormations-architecture
Conclusion
Vous avez mis en œuvre une redirection web avec le RequestDispatcher fourni dans tout serveur d’application Java. Vous avez découvert une mise en œuvre du pattern MVC .
Dans le prochain tutoriel vous allez apprendre la Mise en session
Votre avis nous intéresse
Vous avez remarqué une erreur ? Vous avez une recommandation pour améliorer ce tuto ? Vous souhaitez nous encourager à partager notre savoir-faire technique et pédagogique ?