285022 Creez Votre Application Web Avec Java Ee

605
Créez votre application web avec Java EE Par Correcteur et Coyote www.siteduzero.com Licence Creative Commons 6 2.0 Dernière mise à jour le 8/01/2013

Transcript of 285022 Creez Votre Application Web Avec Java Ee

  • Crez votreapplication web avec

    Java EEPar Correcteur

    et Coyote

    www.siteduzero.com

    Licence Creative Commons 6 2.0Dernire mise jour le 8/01/2013

  • Sommaire 2Sommaire ........................................................................................................................................... 7Lire aussi ............................................................................................................................................ 9 Crez votre application web avec Java EE ........................................................................................ 9Comment lire ce cours ? ...................................................................................................................................................

    10Partie 1 : Les bases du Java EE ....................................................................................................... 10Introduction au Java EE .................................................................................................................................................. 10Pour commencer ....................................................................................................................................................................................................... 10Comment lire ce cours ? ........................................................................................................................................................................................... 10Prrequis ................................................................................................................................................................................................................... 10Qu'est-ce que Java EE ? ........................................................................................................................................................................................... 10Java EE n'est pas Java ............................................................................................................................................................................................. 10Java EE n'est pas Javascript .................................................................................................................................................................................... 11Internet n'est pas le web ! .......................................................................................................................................................................................... 11Comment a marche ................................................................................................................................................................................................. 12Les langages du web ................................................................................................................................................................................................

    12Le Java EE mis nu ! ..................................................................................................................................................... 13Principes de fonctionnement ..................................................................................................................................................................................... 14Le modle MVC : en thorie ...................................................................................................................................................................................... 15Le modle MVC : en pratique ....................................................................................................................................................................................

    17Outils et environnement de dveloppement ................................................................................................................... 17L'IDE Eclipse ............................................................................................................................................................................................................. 17Prsentation .............................................................................................................................................................................................................. 17Tlchargement et installation .................................................................................................................................................................................. 18Configuration ............................................................................................................................................................................................................. 19Le serveur Tomcat ..................................................................................................................................................................................................... 19Prsentation .............................................................................................................................................................................................................. 19Installation ................................................................................................................................................................................................................. 22Cration du projet web avec Eclipse ......................................................................................................................................................................... 32Structure d'une application Java EE ......................................................................................................................................................................... 32Structure standard ..................................................................................................................................................................................................... 33Votre premire page web ..........................................................................................................................................................................................

    37Partie 2 : Premiers pas avec Java EE ............................................................................................... 38La servlet ......................................................................................................................................................................... 38Derrire les rideaux ................................................................................................................................................................................................... 38Retour sur HTTP ....................................................................................................................................................................................................... 39Pendant ce temps-l, sur le serveur ...................................................................................................................................................................... 39Cration ..................................................................................................................................................................................................................... 42Mise en place ............................................................................................................................................................................................................ 43Dfinition de la servlet ............................................................................................................................................................................................... 44Mapping de la servlet ................................................................................................................................................................................................ 45Mise en service ......................................................................................................................................................................................................... 45Do you GET it? .................................................................................................................................................................................................... 47Cycle de vie d'une servlet ......................................................................................................................................................................................... 48Envoyer des donnes au client .................................................................................................................................................................................

    51Servlet avec vue .......................................................................................................................................................... 51Introduction aux JSP ................................................................................................................................................................................................. 51Nature d'une JSP ...................................................................................................................................................................................................... 52Mise en place d'une JSP ........................................................................................................................................................................................... 52Cration de la vue ..................................................................................................................................................................................................... 54Cycle de vie d'une JSP ............................................................................................................................................................................................. 56Mise en relation avec notre servlet ............................................................................................................................................................................

    58Transmission de donnes ............................................................................................................................................... 59Donnes issues du serveur : les attributs ................................................................................................................................................................. 60Donnes issues du client : les paramtres ...............................................................................................................................................................

    63Le JavaBean ................................................................................................................................................................... 64Objectifs .................................................................................................................................................................................................................... 64Pourquoi le JavaBean ? ............................................................................................................................................................................................ 64Un JavaBean n'est pas un EJB ................................................................................................................................................................................. 64Structure .................................................................................................................................................................................................................... 65Mise en place ............................................................................................................................................................................................................ 65Cration de notre bean d'exemple ............................................................................................................................................................................ 68Configuration du projet sous Eclipse ......................................................................................................................................................................... 70Mise en service dans notre application .....................................................................................................................................................................

    72La technologie JSP (1/2) ................................................................................................................................................. 72Les balises ................................................................................................................................................................................................................ 73Les directives ............................................................................................................................................................................................................ 76La porte des objets .................................................................................................................................................................................................. 78Les actions standard ................................................................................................................................................................................................. 78L'action standard useBean ........................................................................................................................................................................................ 79L'action standard getProperty ................................................................................................................................................................................... 79L'action standard setProperty .................................................................................................................................................................................... 80L'action standard forward ..........................................................................................................................................................................................

    82La technologie JSP (2/2) .................................................................................................................................................

    2/606

    www.siteduzero.com

  • 82Expression Language ................................................................................................................................................................................................ 82Prsentation .............................................................................................................................................................................................................. 82La ralisation de tests ............................................................................................................................................................................................... 84La manipulation d'objets ............................................................................................................................................................................................ 89Dsactiver l'valuation des expressions EL .............................................................................................................................................................. 91Les objets implicites .................................................................................................................................................................................................. 91Les objets de la technologie JSP .............................................................................................................................................................................. 94Les objets de la technologie EL ................................................................................................................................................................................

    100Des problmes de vue ? ............................................................................................................................................... 100Nettoyons notre exemple ........................................................................................................................................................................................ 103Compltons notre exemple... .................................................................................................................................................................................. 107Le point sur ce qu'il nous manque ........................................................................................................................................................................... 107Documentation ........................................................................................................................................................................................................ 107Liens utiles ..............................................................................................................................................................................................................

    109TP Fil rouge - tape 1 ................................................................................................................................................... 109Objectifs .................................................................................................................................................................................................................. 109Contexte .................................................................................................................................................................................................................. 109Fonctionnalits ........................................................................................................................................................................................................ 109Contraintes .............................................................................................................................................................................................................. 112Conseils ................................................................................................................................................................................................................... 112 propos des formulaires ......................................................................................................................................................................................... 113Le modle ................................................................................................................................................................................................................ 113Les contrleurs ........................................................................................................................................................................................................ 113Les vues .................................................................................................................................................................................................................. 114Cration du projet .................................................................................................................................................................................................... 114Illustration du comportement attendu ...................................................................................................................................................................... 115Exemples de rendu du comportement attendu ........................................................................................................................................................ 118Correction ................................................................................................................................................................................................................ 118Le code des beans .................................................................................................................................................................................................. 120Le code des servlets ............................................................................................................................................................................................... 123Le code des JSP .....................................................................................................................................................................................................

    125Partie 3 : Une bonne vue grce la JSTL ...................................................................................... 125Objectifs et configuration ............................................................................................................................................... 125C'est sa raison d'tre ........................................................................................................................................................................................... 125Lisibilit du code produit .......................................................................................................................................................................................... 126Moins de code crire ............................................................................................................................................................................................ 126Vous avez dit MVC ? ............................................................................................................................................................................................... 127 retenir ................................................................................................................................................................................................................... 127Plusieurs versions ................................................................................................................................................................................................... 127Configuration ........................................................................................................................................................................................................... 127Configuration de la JSTL .........................................................................................................................................................................................

    130La bibliothque Core ..................................................................................................................................................... 131Les variables et expressions ................................................................................................................................................................................... 131Affichage d'une expression ..................................................................................................................................................................................... 132Gestion d'une variable ............................................................................................................................................................................................. 135Les conditions ......................................................................................................................................................................................................... 135Une condition simple ............................................................................................................................................................................................... 136Des conditions multiples ......................................................................................................................................................................................... 136Les boucles ............................................................................................................................................................................................................. 136Boucle "classique" ................................................................................................................................................................................................... 138Itration sur une collection ...................................................................................................................................................................................... 141Itration sur une chane de caractres .................................................................................................................................................................... 141Ce que la JSTL ne permet pas (encore) de faire .................................................................................................................................................... 141Les liens .................................................................................................................................................................................................................. 142Liens ........................................................................................................................................................................................................................ 144Redirection .............................................................................................................................................................................................................. 145Imports .................................................................................................................................................................................................................... 146Les autres bibliothques de la JSTL .......................................................................................................................................................................

    147JSTL core : exercice d'application ................................................................................................................................. 148Les bases de l'exercice ........................................................................................................................................................................................... 150Correction ................................................................................................................................................................................................................

    154La bibliothque xml ....................................................................................................................................................... 154La syntaxe XPath .................................................................................................................................................................................................... 154Le langage XPath .................................................................................................................................................................................................... 155Les actions de base ................................................................................................................................................................................................ 155Rcuprer et analyser un document ....................................................................................................................................................................... 158Afficher une expression ........................................................................................................................................................................................... 159Crer une variable ................................................................................................................................................................................................... 159Les conditions ......................................................................................................................................................................................................... 159Les conditions ......................................................................................................................................................................................................... 160Les boucles ............................................................................................................................................................................................................. 160Les boucles ............................................................................................................................................................................................................. 161Les transformations ................................................................................................................................................................................................. 161Transformations ......................................................................................................................................................................................................

    164JSTL xml : exercice d'application .................................................................................................................................. 165Les bases de l'exercice ........................................................................................................................................................................................... 166Correction ................................................................................................................................................................................................................

    168Faisons le point ! ........................................................................................................................................................... 168Reprenons notre exemple ....................................................................................................................................................................................... 170Quelques conseils ................................................................................................................................................................................................... 170Utilisation de constantes .........................................................................................................................................................................................

    Sommaire 3/606

    www.siteduzero.com

  • 172Inclure automatiquement la JSTL Core toutes vos JSP ....................................................................................................................................... 173Formater proprement et automatiquement votre code avec Eclipse ...................................................................................................................... 178Documentation ........................................................................................................................................................................................................ 178Liens utiles ..............................................................................................................................................................................................................

    179TP Fil rouge - tape 2 ................................................................................................................................................... 180Objectifs .................................................................................................................................................................................................................. 180Utilisation de la JSTL ............................................................................................................................................................................................... 180Application des bonnes pratiques ........................................................................................................................................................................... 180Exemples de rendus ............................................................................................................................................................................................... 181Conseils .................................................................................................................................................................................................................. 182Utilisation de la JSTL ............................................................................................................................................................................................... 182Application des bonnes pratiques ........................................................................................................................................................................... 183Correction ................................................................................................................................................................................................................ 183Code des servlets ................................................................................................................................................................................................... 186Code des JSP .........................................................................................................................................................................................................

    191Partie 4 : Une application interactive ! ............................................................................................. 192Formulaires : le b.a.-ba ................................................................................................................................................. 192Mise en place .......................................................................................................................................................................................................... 193JSP & CSS .............................................................................................................................................................................................................. 195La servlet ................................................................................................................................................................................................................. 196L'envoi des donnes ............................................................................................................................................................................................... 197Contrle : ct servlet ............................................................................................................................................................................................. 201Affichage : ct JSP ................................................................................................................................................................................................

    208Formulaires : la mode MVC ....................................................................................................................................... 209Analyse de notre conception ................................................................................................................................................................................... 209Cration du modle ................................................................................................................................................................................................. 213Reprise de la servlet ............................................................................................................................................................................................... 215Reprise de la JSP ....................................................................................................................................................................................................

    217TP Fil rouge - tape 3 ................................................................................................................................................... 217Objectifs .................................................................................................................................................................................................................. 217Fonctionnalits ........................................................................................................................................................................................................ 217Exemples de rendus ............................................................................................................................................................................................... 219Conseils .................................................................................................................................................................................................................. 220Correction ................................................................................................................................................................................................................ 220Code des objets mtier ........................................................................................................................................................................................... 226Code des servlets ................................................................................................................................................................................................... 228Code des JSP .........................................................................................................................................................................................................

    232La session : connectez vos clients ................................................................................................................................ 233Le formulaire ........................................................................................................................................................................................................... 233Le principe de la session ......................................................................................................................................................................................... 236Le modle ............................................................................................................................................................................................................... 238La servlet ................................................................................................................................................................................................................. 240Les vrifications ...................................................................................................................................................................................................... 240Test du formulaire de connexion ............................................................................................................................................................................. 242Test de la destruction de session ............................................................................................................................................................................ 247Derrire les rideaux ................................................................................................................................................................................................. 247La thorie : principe de fonctionnement .................................................................................................................................................................. 248La pratique : scrutons nos requtes et rponses .................................................................................................................................................... 261En rsum ...............................................................................................................................................................................................................

    262Le filtre : crez un espace membre ............................................................................................................................... 263Restreindre l'accs une page ............................................................................................................................................................................... 263Les pages d'exemple .............................................................................................................................................................................................. 264La servlet de contrle .............................................................................................................................................................................................. 265Test du systme ...................................................................................................................................................................................................... 266Le problme ............................................................................................................................................................................................................ 266Le principe du filtre .................................................................................................................................................................................................. 266Gnralits .............................................................................................................................................................................................................. 267Fonctionnement ...................................................................................................................................................................................................... 268Cycle de vie ............................................................................................................................................................................................................. 269Restreindre l'accs un ensemble de pages ......................................................................................................................................................... 269Restreindre un rpertoire ........................................................................................................................................................................................ 273Restreindre l'application entire .............................................................................................................................................................................. 280Dsactiver le filtre .................................................................................................................................................................................................... 280Modifier le mode de dclenchement d'un filtre ........................................................................................................................................................ 281Retour sur l'encodage UTF-8 ..................................................................................................................................................................................

    283Le cookie : le navigateur vous ouvre ses portes ........................................................................................................... 284Le principe du cookie .............................................................................................................................................................................................. 284Ct HTTP .............................................................................................................................................................................................................. 284Ct Java EE .......................................................................................................................................................................................................... 284Souvenez-vous de vos clients ! ............................................................................................................................................................................... 285Reprise de la servlet ............................................................................................................................................................................................... 289Reprise de la JSP .................................................................................................................................................................................................... 291Vrifications ............................................................................................................................................................................................................. 294 propos de la scurit ...........................................................................................................................................................................................

    294TP Fil rouge - tape 4 ................................................................................................................................................... 295Objectifs .................................................................................................................................................................................................................. 295Fonctionnalits ........................................................................................................................................................................................................ 295Exemples de rendus ............................................................................................................................................................................................... 298Conseils .................................................................................................................................................................................................................. 300Correction ................................................................................................................................................................................................................ 300Le code des vues ....................................................................................................................................................................................................

    Sommaire 4/606

    www.siteduzero.com

  • 306Le code des servlets ............................................................................................................................................................................................... 312Le code des objets mtiers .....................................................................................................................................................................................

    316Formulaires : l'envoi de fichiers ..................................................................................................................................... 317Cration du formulaire ............................................................................................................................................................................................. 317Rcupration des donnes ..................................................................................................................................................................................... 317Mise en place .......................................................................................................................................................................................................... 318Traitement des donnes .......................................................................................................................................................................................... 325La diffrence entre la thorie et la pratique ............................................................................................................................................................. 327Enregistrement du fichier ........................................................................................................................................................................................ 327Dfinition du chemin physique ................................................................................................................................................................................ 328criture du fichier sur le disque ............................................................................................................................................................................... 331Test du formulaire d'upload ..................................................................................................................................................................................... 331Problmes et limites ................................................................................................................................................................................................ 331Comment grer les fichiers de mmes noms ? ....................................................................................................................................................... 331Comment viter les doublons ? ............................................................................................................................................................................... 332O stocker les fichiers reus ? ................................................................................................................................................................................ 332Rendre le tout entirement automatique ................................................................................................................................................................. 333Intgration dans MVC .............................................................................................................................................................................................. 333Cration du bean reprsentant un fichier ................................................................................................................................................................ 333Cration de l'objet mtier en charge du traitement du formulaire ........................................................................................................................... 338Reprise de la servlet ............................................................................................................................................................................................... 339Adaptation de la page JSP aux nouvelles informations transmises ........................................................................................................................ 340Comportement de la solution finale .........................................................................................................................................................................

    341Le tlchargement de fichiers ....................................................................................................................................... 342Une servlet ddie .................................................................................................................................................................................................. 342Cration de la servlet .............................................................................................................................................................................................. 342Paramtrage de la servlet ....................................................................................................................................................................................... 344Analyse du fichier .................................................................................................................................................................................................... 345Gnration de la rponse HTTP ............................................................................................................................................................................. 346Lecture et envoi du fichier ....................................................................................................................................................................................... 347Vrification de la solution ........................................................................................................................................................................................ 348Une solution plus simple ......................................................................................................................................................................................... 348L'tat d'un tlchargement ...................................................................................................................................................................................... 349Raliser des statistiques .........................................................................................................................................................................................

    350TP Fil rouge - tape 5 ................................................................................................................................................... 350Objectifs .................................................................................................................................................................................................................. 350Fonctionnalits ........................................................................................................................................................................................................ 350Exemples de rendus ............................................................................................................................................................................................... 353Conseils .................................................................................................................................................................................................................. 353Envoi du fichier ........................................................................................................................................................................................................ 353Validation et enregistrement du fichier .................................................................................................................................................................... 354Affichage d'un lien vers l'image ............................................................................................................................................................................... 354R-affichage de l'image ........................................................................................................................................................................................... 354Correction ................................................................................................................................................................................................................ 355Le code de l'objet mtier ......................................................................................................................................................................................... 360Le code des servlets ............................................................................................................................................................................................... 363Le code des JSP .....................................................................................................................................................................................................

    369Partie 5 : Les bases de donnes avec Java EE .............................................................................. 370Introduction MySQL et JDBC ..................................................................................................................................... 370Prsentation des bases de donnes ....................................................................................................................................................................... 370Structure .................................................................................................................................................................................................................. 371SGBD ...................................................................................................................................................................................................................... 372SQL ......................................................................................................................................................................................................................... 372Prparation de la base avec MySQL ....................................................................................................................................................................... 372Installation ............................................................................................................................................................................................................... 374Cration d'une base ................................................................................................................................................................................................ 374Cration d'un utilisateur ........................................................................................................................................................................................... 375Cration d'une table ................................................................................................................................................................................................ 375Insertion de donnes d'exemple ............................................................................................................................................................................. 376Mise en place de JDBC dans le projet .................................................................................................................................................................... 376JDBC ....................................................................................................................................................................................................................... 377Mise en place .......................................................................................................................................................................................................... 377Cration d'un bac sable ........................................................................................................................................................................................ 377Cration de l'objet Java ........................................................................................................................................................................................... 378Cration de la servlet .............................................................................................................................................................................................. 379Cration de la page JSP ......................................................................................................................................................................................... 379En rsum ...............................................................................................................................................................................................................

    379Communiquez avec votre BDD ..................................................................................................................................... 380Chargement du driver .............................................................................................................................................................................................. 380Connexion la base, cration et excution d'une requte ..................................................................................................................................... 380Connexion la base de donnes ............................................................................................................................................................................ 382Cration d'une requte ............................................................................................................................................................................................ 383Excution de la requte ........................................................................................................................................................................................... 383Accs aux rsultats de la requte ........................................................................................................................................................................... 385Libration des ressources ....................................................................................................................................................................................... 386Mise en pratique ...................................................................................................................................................................................................... 386Afficher le contenu de la table Utilisateur ................................................................................................................................................................ 388Insrer des donnes dans la table Utilisateur ......................................................................................................................................................... 390Les limites du systme ............................................................................................................................................................................................ 390Insrer des donnes saisies par l'utilisateur ........................................................................................................................................................... 390Le problme des valeurs nulles .............................................................................................................................................................................. 392Le cas idal .............................................................................................................................................................................................................

    Sommaire 5/606

    www.siteduzero.com

  • 392Les injections SQL .................................................................................................................................................................................................. 393Les requtes prpares .......................................................................................................................................................................................... 393Pourquoi prparer ses requtes ? ........................................................................................................................................................................... 395Comment prparer ses requtes ? ......................................................................................................................................................................... 397Mise en pratique ...................................................................................................................................................................................................... 400En rsum ...............................................................................................................................................................................................................

    400Le modle DAO ............................................................................................................................................................. 401Objectifs .................................................................................................................................................................................................................. 401Inconvnients de notre solution .............................................................................................................................................................................. 401Isoler le stockage des donnes ............................................................................................................................................................................... 402Principe ................................................................................................................................................................................................................... 402Constitution ............................................................................................................................................................................................................. 403Intgration ............................................................................................................................................................................................................... 403Cration ................................................................................................................................................................................................................... 403Modification de la table Utilisateur .......................................................................................................................................................................... 404Reprise du bean Utilisateur ..................................................................................................................................................................................... 405Cration des exceptions du DAO ............................................................................................................................................................................ 407Cration d'un fichier de configuration ...................................................................................................................................................................... 407Cration d'une Factory ............................................................................................................................................................................................ 410Cration de l'interface du DAO Utilisateur ............................................................................................................................................................... 411Cration de l'implmentation du DAO ..................................................................................................................................................................... 417Intgration ............................................................................................................................................................................................................... 417Chargement de la DAOFactory ............................................................................................................................................................................... 419Utilisation depuis la servlet ...................................................................................................................................................................................... 421Reprise de l'objet mtier .......................................................................................................................................................................................... 424Cration d'une exception ddie aux erreurs de validation .................................................................................................................................... 424Vrifications ............................................................................................................................................................................................................. 424Le code final ............................................................................................................................................................................................................ 425Le scnario de tests ................................................................................................................................................................................................ 426En rsum ...............................................................................................................................................................................................................

    428TP Fil rouge - tape 6 ................................................................................................................................................... 428Objectifs .................................................................................................................................................................................................................. 428Fonctionnalits ........................................................................................................................................................................................................ 428Conseils .................................................................................................................................................................................................................. 428Cration de la base de donnes ............................................................................................................................................................................. 430Mise en place de JDBC ........................................................................................................................................................................................... 430Rutilisation de la structure DAO dveloppe dans le cadre du cours ................................................................................................................... 430Cration des interfaces et implmentations du DAO .............................................................................................................................................. 431Intgration dans le code existant ............................................................................................................................................................................ 433Correction ................................................................................................................................................................................................................ 433Code de la structure DAO ....................................................................................................................................................................................... 435Code des interfaces DAO ........................................................................................................................................................................................ 436Code des implmentations DAO ............................................................................................................................................................................. 442Code des beans ...................................................................................................................................................................................................... 444Code des objets mtier ........................................................................................................................................................................................... 455Code des servlets ................................................................................................................................................................................................... 463Code du filtre ........................................................................................................................................................................................................... 465Code des JSP .........................................................................................................................................................................................................

    470Grer un pool de connexions avec BoneCP ................................................................................................................. 471Contexte .................................................................................................................................................................................................................. 471Une application multi-utilisateurs ............................................................................................................................................................................ 471Le cot d'une connexion la BDD .......................................................................................................................................................................... 471La structure actuelle de notre solution .................................................................................................................................................................... 472Principe ................................................................................................................................................................................................................... 472Rutilisation des connexions ................................................................................................................................................................................... 473Remplacement du DriverManager par une DataSource ......................................................................................................................................... 473Choix d'une implmentation .................................................................................................................................................................................... 473Mise en place .......................................................................................................................................................................................................... 473Ajout des jar au projet ............................................................................................................................................................................................. 474Prise en main de la bibliothque ............................................................................................................................................................................. 474Modification de la DAOFactory ................................................................................................................................................................................ 477Vrifications ............................................................................................................................................................................................................. 477Configuration fine du pool ....................................................................................................................................................................................... 477En rsum ...............................................................................................................................................................................................................

    479Partie 6 : Aller plus loin avec JPA et JSF ......................................................................................... 479Les annotations ............................................................................................................................................................. 479Prsentation ............................................................................................................................................................................................................ 479crire des mta-donnes ........................................................................................................................................................................................ 479Pallier certaines carences ....................................................................................................................................................................................... 480Simplifier le dveloppement .................................................................................................................................................................................... 480Principe ................................................................................................................................................................................................................... 480Syntaxe sans paramtres ........................................................................................................................................................................................ 480Syntaxe avec paramtres ........................................................................................................................................................................................ 481Avec l'API Servlet 3.0 .............................................................................................................................................................................................. 481WebServlet .............................................................................................................................................................................................................. 482WebFilter ................................................................................................................................................................................................................. 483WebInitParam .......................................................................................................................................................................................................... 483WebListener ............................................................................................................................................................................................................ 484MultipartConfig ........................................................................................................................................................................................................ 485Et le web.xml dans tout a ? ................................................................................................................................................................................... 486En rsum ...............................................................................................................................................................................................................

    486La persistance des donnes avec JPA .........................................................................................................................

    Sommaire 6/606

    www.siteduzero.com

  • 487Gnralits .............................................................................................................................................................................................................. 488Principe ................................................................................................................................................................................................................... 488Des EJB dans un conteneur ................................................................................................................................................................................... 489Un gestionnaire dentits ......................................................................................................................................................................................... 489Mise en place .......................................................................................................................................................................................................... 489Le serveur dapplications GlassFish ....................................................................................................................................................................... 493Cration du projet .................................................................................................................................................................................................... 495Cration dune entit Utilisateur .............................................................................................................................................................................. 496Cration dun EJB Session ..................................................................................................................................................................................... 499Modification de la servlet ......................................................................................................................................................................................... 501Modification de lobjet mtier ................................................................................................................................................................................... 502Tests et vrifications ................................................................................................................................................................................................ 502Vrification du bon fonctionnement dune inscription .............................................................................................................................................. 502Analyse des requtes SQL gnres lors dune inscription .................................................................................................................................... 504Aller plus loin ........................................................................................................................................................................................................... 504ORM, ou ne pas ORM ? .......................................................................................................................................................................................... 506En rsum ...............................................................................................................................................................................................................

    506TP Fil rouge - tape 7 ................................................................................................................................................... 507Objectifs .................................................................................................................................................................................................................. 507Fonctionnalits ........................................................................................................................................................................................................ 507Conseils .................................................................................................................................................................................................................. 507Environnement de dveloppement ......................................................................................................................................................................... 507Reprise du code existant ......................................................................................................................................................................................... 509Correction ................................................................................................................................................................................................................ 509Le code de configuration ......................................................................................................................................................................................... 510Le code des EJB Entity ........................................................................................................................................................................................... 513Le code des EJB Session ....................................................................................................................................................................................... 515Le code des servlets ..............................................................................................................................................................