Ce tutoriel Objis détaille la création, l’intégration et le déploiement dans Jonas une application J2EE accédant à une base de données MYSQL5. Une mise en oeuvre est réalisée lors de la formation Administration Jonas dispensée par Objis.
Expertise, pédagogie et partage
Le centre de formation Objis propose une approche innovante de la formation, basée sur 3 dimensions : l’expertise, la pédagogie et…le partage !
Formation Architecture Java
Soyez prêt pour des projets ambitieux : formation architecture Java Objis
Liens utiles
+ de 100 tutoriaux java/jee Objis
Objis, spécialiste formation java depuis 2005
Catalogue formations Objis
PDF brochure Objis 2010 : témoignage clients, catalogue et calendrier formations janvier-décembre 2010
Une attention sera apportée à la configuration d’une DataSource JNDI dans Jonas ainsi que la configuration de l’application web pour communiquer avec cette DataSource , notament à travers les descripteurs de déploiement web.xml (standard J2EE) et jonas-web.xml (spécifique Jonas). Nous préciserons les rôles respectifs du développeur J2EE et de l’administrateur du serveur d’application Jonas.
Le point de départ du tutoriel est une application minimale J2EE standard (JonasMysqlTest.war), que vous pouvez télécharger et déployer. Aucune configuration particulière n’est présente.
Déployez ce fichier en utilisant l’interface d’administration de Jonas.
En se connectant à l’application (http://localhost:9000/JonasMysqlTest), vous obtenez ceci :
Les étapes à suivre pour progressivement ajouter des capacités de connection à une base dee données sous jonas sont :
1) Installation et lancement Base de données
2) Insertion de données dans la base de données
3) Installation driver/connecteur Mysql
4) Configuration de l’application cible (web.xml)
5) Création page JSP d’affichage des données
6) Intégration Base de données dans JONAS
7) Configuration de l’application cible (jonas-web.xml)
8) Packaging de l’application
9) Déploiement
10) Test
Lien utile : https://wiki.objectweb.org/jonas/Wiki.jsp
Environnement : Jonas 4.8.6 / Tomcat 5.5
OS : Ubuntu
1) Install/Lancement MySQL5
Téléchargez binaires MySQL (ici Linux, x86, Fichier Mysql-5.0.51a-linux-i686-glibc23.tar.gz)
Dézippez : tar zxvf mysql-5.0.51a-linux-i686-glibc23.tar.gz . Vous obtenez répertoire mysql-5.0.51a-linux-i686-glibc23. Entrez dans ce répertoire
Lancez le serveur Mysql via: ./bin/mysqld_safe &
Vérifiez port 3306 est bien occupé : netstat -an | grep 3306
2) Insertion données de test
Se connecter en tant que root : ./bin/mysql -u root -p (+ Entree)
Pour le mot de passe demandé, taper entrée (vide par défaut).
Utilisez la base de données test (livrée avec Mysql) mysql>use test;
Créez un utilisateur : mysql>grant all privileges on *.* TO javauser@localhost identified by ‘objis’ with grant option;
Créez une table de test mysql>create table testdata (id int not null auto_increment primary key,foo varchar(25),bar int);
Insérez des données dans la table : mysql>insert into testdata values(1, ‘objis’, 2008);
Vérifier que les données sont dans la table : mysql>select * from testdata;
3) Installation driver Mysql5
Téléchargez binaires du Connecteur MySQL pour Java (Connector/J) . Ici mysql-connector-java-5.1.6.zip
Dézippez : unzip mysql-connector-java-5.1.6.zip . vous obtener répertoire mysql-connector-java-5.1.6, à l’intérieur duquel le jar mysql-connector-java-5.1.6-bin.jar
Copiez le driver mysql-connector-java-5.1.6-bin.jar dans le répertoire lib/jonas/commons de JONAS .
4) Config. web.xml
Insérez la configuration suivante entre les balises
Ainsi la base de données sera appelée par le développeurs via DataSource identifiée dans le code source par jdbc/TestDB
5) JSP et lookUp JNDI datasource
Dans le corps de la page index.jsp , ajoutez ceci à la place du texte ‘ICI, insérer le code JSP…’
Enregistrez le fichier index.jsp .
Ce fichier affiche des informations via une classe utilitaire DBTest qui communique avec la datasource jdbc/TestDB.
Compilez et enregistrer la classe DBTest (dans son package) dans le répertoire WEB-INFclasses
6) Intégration MySQL dans JONAS
Copiez/collez fichier confMYSQL.properties en MYSQL1.properties afin de configurer une deuxième source de données (jdbc_2)
Modifier paramètre MYSQL1.properties avec les informations suivantes
Modifiez fichier de configuration confJonas.properties de Jonas, pour le service DB : remplacer la ligne « jonas.service.dbm.datasources HSQL1 » par « jonas.service.dbm.datasources HSQL1,MYSQL1 »
Arrêtez et relancer Jonas (jonas stop , puis jonas start).
Dans la console d’administration de Jonas, Déployez la ressource MYSQL1 (Dans resourcesDatabases , apparaît MYSQL1 comme candidat au déploiement. Déployez !)
7) Config jonas-web.xml
Créez un fichier jonas-web.xml permettant de lier le nom JNDI utilisé par l’application (jdbc/TestDB) au nom donné par l’administrateur dans Jonas (jdbc_2)
Copiez le fichier jonas-web dans le répertoire WEB-INF, près du fichier web.xml
8) Packaging WAR
Créez le WAR DBTest.war contenant : classe TestTB, fichiers index.jsp, web.xml, jonas-web.xml . jar cvf JonasMysqlTest.war * (à partir du répertoire JonasMysqlTest)
Si vous souhaitez une version complète, configurée avec sources du war, contactez-nous.
9) Déploiement
A l’aide de la console d’administration de Jonas, Déployez le WAR obtenu dans Jonas.
10) Test
lancer navigateur sur l’URL : http://localhost:9000/JonasMysqlTest
AUTRE LIVRABLE pour TESTER
Formation Architecture Java
Soyez prêt pour des projets ambitieux : formation architecture Java Objis