Connecteur MySQL sous GlassFish

Connecteur MYSQL

GlassFish 4.1 dans sa version serveur peut nécessiter l’installation d’un connecteur MySQL pour se connecter à la base de données.

Explication de l’erreur

Lors du déploiement de votre application, vous devriez (si vous n’avez aucun connecteur de base de données) vous heurter à l’exception suivante :

com.sun.appserv.connectors.internal.api.ConnectorRuntimeException: 
Invalid resource : jdbc/connection__pm

Cela signifie que vous devez avoir deux choses.

  • Un pool de connexion JDBC et une resource JDBC
  • Votre connecteur MySQL

Créer les resources JDBC

Depuis l’administration de Glassfish (http://localhost:4848), rendez-vous dans : Resources > JDBC.

JDBC connection pool

JDBC connection Pool

Resource JDBC

Resource JDBC

Connecteur MySQL

Si vous avez installé Glassfish dans sa version basique, vous n’avez peut-être pas de connecteur MySQL intégré.

Rendez-vous sur la page dédiée au connecteurs MySQL sur Oracle, et téléchargez le connecteur (vous devez avoir un compte, créez-en un au besoin).

Ou alors utilisez le lien direct :

Télécharger le connecteur MySQL pour Java

Error occurred during deployment: Exception while preparing the app : Exception [EclipseLink-4002] (Eclipse Persistence Services – 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException:

Error in allocating a connection.
Cause: Class name is wrong or classpath is not set for : com.mysql.jdbc.jdbc2.optional.MysqlDataSource Error Code: 0.
Please see server.log for more details.

Le connecteur doit être placé dans le dossier dans le dossier suivant (après avoir été dézippé, déplacez uniquement le .jar)

/usr/local/glassfish/glassfish/domains/domain1/lib/ext/

Voici le script que j’ai utilisé sur mon serveur Debian.

# téléchargement du connecteur officiel MySQL pour Java
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.41.zip

# on dézippe l'archive contenant le connecteur MySQL pour Java
unzip mysql-connector-java-5.1.41.zip

# on déplace le connecteur MySQL sur Glassfish
cp -v mysql-connector-java-5.1.41/mysql-connector-java-5.1.41-bin.jar /usr/local/glassfish4/glassfish/domains/domain1/lib/ext/

Et redémarrer Glassfish pour la prise en charge du connecteur.

bash /usr/local/glassfish/bin/asadmin restart-domain

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *