Utilisation d'une DataSource et d'un pool de connexions JDBC sous TomCat Objectif Utiliser JDBC depuis une application Web via une DataSource gérée par le serveur Tomcat Exercice Télécharger une application Web pour la gestion de comptes en banques Configurer Tomcat et l'application Web pour utiliser une DataSource vers la base Oracle sur hopper Tester l'application Philippe GENOUD UJF Grenoble 5/03/007 Interface et fonctionnement de l'application Page d'accueil Retour à la page de login en indiquant la cause de l'échec Page liste des comptes Permet de sélectionner le compte source et le compte destination et le montant du transfert Page pour effectuer un transfert Page affichage des résultats du transfert Réalisation du transfert échec Authentification de l'utilisateur ok Affiche la liste des comptes accessibles par le client Déconnexion L'utilisateur n'a plus accès à l'application à moins de repasser par la phase d'authentification Page de déconnexion Annexe 3 : interface de l'application Banque IMA on line Philippe GENOUD UJF Grenoble 5/03/007 Page indiquant si le transfert a réussi ou non Et en cas d'échec la raison de ce dernier
Les différents composants (JSP, Servlet) de l'application Page d'accueil Retour à la page de login en indiquant la cause de l'échec Page liste des comptes échec <JSP > Authentification de l'utilisateur LoginServlet ok <JSP > accueil.jsp listecomptes.jsp Permet de sélectionner le compte source et le compte destination et le montant du transfert Page pour effectuer un transfert <JSP > transfert.jsp Déconnexion ' LogoutServlet L'utilisateur n'a plus accès à l'application à moins de repasser par la phase d'authentification Page de déconnexion ' Page affichage des résultats du transfert Réalisation du transfert TransfertServlet <JSP > <JSP > bye.jsp ' Philippe GENOUD UJF Grenoble 5/03/007 aprestransfert.jsp 3 Etape 0 : récupérer l'application a) Télécharger BIMA_V.0.zip b) Le décompresser (c'est un projet NetBeans pour application Web) c) Lancer NetBeans et ouvir ce projet Philippe GENOUD UJF Grenoble 5/03/007 4
Etape : configurer le serveur Tomcat a) Ouvrir la console d'administration Démarrer le serveur Tomcat (onglet Runtime, nœud Servers) Demander affichage de la console d'administration Ouvre une fenêtre de navigateur Web positionnée sur la page d'accueil de l'application Le nom d'utilisateur et le mot de passe administrateur sont définis dans le fichier de configuration tomcat-users.xml Philippe GENOUD UJF Grenoble 5/03/007 5 Etape : configurer le serveur Tomcat b) Si nécessaire éditer le fichier tomcat-users.xml pour y définir un rôle administrateur Ouvrir le fichier tomcat-users.xml qui se trouve : Sur unix dans : homedir/.netbeans/5.5/apache-tomcat-5.5.7_base/conf Sur windows dans : C:\Documents and Settings\nomLogin \.netbeans\5.5\apache-tomcat-5.5.7_base\conf Ajouter une ligne avec le rôle administrateur Dans le fichier tomcat-users.xml Il faut redémarrer Tomcat pour que les changements prennent effet. Philippe GENOUD UJF Grenoble 5/03/007 6
Etape : configurer le serveur Tomcat c) Créer une DataSource dans la console d'administration Enregistrer les modifications dans le fichier server.xml 5 redémarrer Tomcat pour que les changements prennent effet. Sélectionner l'item Data Sources dans la section Resources jdbc/bimaoracle jdbc:oracle:thin:@hopper. e.ujf-grenoble.fr:5:ufrima oracle.jdbc.oracledriver toto ****** 3 Sélectionner l'action Create New Data Source Renseigner les différents champs pour l'identification de la DataSource par JNDI et la configuration du pilote JDBC Philippe GENOUD UJF Grenoble 5/03/007 Valider la création 4 Le.jar du pilote JDBC doit avoir été copié dans common/lib du serveur Tomcat 7 Etape : Configurer votre application Web pour utiliser la DataSource a) associer la DataSource définie comme une ressource globale de Tomcat à une ressource de votre application Ouvrir le fichier de configuration context.xml Créer un lien (ResourceLink) entre les ressources Nom de la ressource globale (dans le fichier server.xml) Nom de la ressource au sein de votre application Philippe GENOUD UJF Grenoble 5/03/007 8
Etape : Configurer votre application Web pour utiliser la DataSource b) définir la DataSource comme une ressource dans le fichier de déploiement (web.xml) Sélectionner l'item References dans l'éditeur du fichier de configuration Ajouter une ressource 3 4 jdbc/bima Ouvrir le fichier de configuration web.xml Indiquer le nom de la ressource (telle qu'elle a été définie dans le fichier context.xml) Philippe GENOUD UJF Grenoble 5/03/007 9 Etape : Configurer votre application Web pour utiliser la DataSource b') une autre manière de procéder est d'éditer directement le fichier web.xml Passer en mode textuel Insérer la description de la ressource Philippe GENOUD UJF Grenoble 5/03/007 0
Etape 3 : Lancer et tester l'application N'oubliez pas de créer (et d'initialiser) les tables dans le SGBD avant de lancer l'application Philippe GENOUD UJF Grenoble 5/03/007 Scripts de création des tables CREATE TABLE COMPTES ( NUMERO INTEGER NOT NULL, SOLDE NUMBER(9,) NOT NULL, INTITULE VARCHAR(3), DECOUVERTMAX NUMBER(9,) NOT NULL, DEBITMAX NUMBER(9,) NOT NULL, PRIMARY KEY (NUMERO) ) CREATE TABLE CLIENTS ( CLIENT_ID INTEGER NOT NULL, NOM VARCHAR(3) NOT NULL, PRENOM VARCHAR(3) NOT NULL, ADRESSE VARCHAR(3) NOT NULL, PASSWD VARCHAR(3) NOT NULL, PRIMARY KEY (CLIENT_ID) ) N'oubliez pas de créer les données. Attention tout compte doit avoir un titulaire et un seul défini dans la table COMPTES_CLIENTS CREATE TABLE COMPTES_CLIENTS ( NUMERO INTEGER NOT NULL, CLIENT_ID INTEGER NOT NULL, TITULAIRE INTEGER, FOREIGN KEY (NUMERO) REFERENCES COMPTES (NUMERO), FOREIGN KEY (CLIENT_ID) REFERENCES CLIENTS (CLIENT_ID) ) Philippe GENOUD UJF Grenoble 5/03/007