Pour installer une datasource dans un serveur Glassfish 2, il faut d’abord installer le driver de la base de données, créer le pool de connexion, puis déclarer ce pool comme une ressource JNDI. Nous voyons cette procédure pour le cas d’une base MySql, mais elle s’applique à toute autre base.
Driver
Il suffit de placer le fichier d’archive jar du driver (mysql-connector-java-5.x.x-bin.jar, pour MySql) dans le répertoire bin de Glassfish.
Pool de connexion
Le pool de connexion doit être créé via la console d’administration, à l’adresse http://localhost:4848/. Cette adresse est valable pour un glassfish local, installé avec une configuration par défaut.
Les paramètres d’authentification par défaut sont :
-
login = admin
-
password = adminadmin
Créer le pool
Dans le menu, à gauche, on ouvre les tâches "Resources" puis "JDBC" et, enfin, "Connection Pools". A ce niveau, on clique sur le bouton "New" pour arriver dans l’écran de saisie des informations générales du pool (étape 1/2). Pour mon exemple, je saisis les informations suivantes :
-
Name: LibrairiePool
-
Resource Type: javax.sql.Datasource
-
Database Vendor: MySql
Le bouton "Next" nous envoie vers la deuxième étape, qui est l’écran des informations détaillées. Cet écran est constitué de plusieurs zones :
-
General Settings: rappel des informations de la première étape et spécification de la classe de Datasource.
-
Pool Settings: paramétrage du pool, avec les tailles mini et maxi
-
Connection Validation: activation des fonctionnalité de fail-over sur les connexions
-
Transaction: paramétrage de la gestion transactionnelle, en particulier de l’isolation
-
Additional Properties: paramètre de connexion, dont
-
url=jdbc:mysql://localhost:3306/librairie
-
user=root
-
password=rootpwd
Remarques :
-
Le pool ne supporte pas que le mot de passe soit vide.
-
Ces propriétés ne sont pas celles proposées par défaut.
Après avoir saisi ces données, on peut cliquer sur "Finish" pour retourner à la liste des pools.
Tester le pool
A partir de la liste des pools, on peut revenir aux informations détaillées d’un pool. En haut de cet écran, un bouton "Ping" permet de tester la connexion.
Ressource JNDI
Pour le rendre accessible, il faut déclarer une ressource JNDI branchée sur le pool nouvellement créé. Cela se fait aussi dans la console d’administration, en passant par le menu "Resources" / "JDBC" / "JDBC Resources"
-
JNDI Name: jdbc/LibrairieDS
-
Pool Name: sélectionner "LibrairiePool"
-
Description: bla bla
-
Status: cocher "Enabled"
Puis on clique sur OK et la datasource est prête à l’emploi.