Ajouter et enlever des composants dans Glassfish

Le fournisseur de persistance (Persistence Provider) utilisé de base avec Glassfish est EclipseLink. Malheureusement, j’avais besoin d’utiliser Hibernate pour un projet. Il m’a donc fallut l’installer.

Grâce à l’update center, ceci est devenu très simple. Il faut tout d’abord commencer par installer ce dernier si ce n’est pas déjà fait. Il suffit d’exécuter updatetool dans le dossier bin à la racine de l’installation de Glassfish.

Une fois l’update center installé, il suffit de cocher Hibernate JPA dans les composants disponibles pour qu’il soit rajouté à Glassfish.

Voyons maintenant la procédure pour désinstaller un composant précédemment installé par ce biais. Il faut passer par l’outil pkg situé dans le même répertoire bin que tout à l’heure. En effet, il n’est pas possible de décocher un composant pour le supprimer. Il est possible de lister les noms exacts de tous les composants actuellement installés en faisant :

pkg list

Il ne reste plus qu’à supprimer ceux que l’on veut à l’aide de la commande :

pkg uninstall <PACKAGE NAME>

Vous voilà prêt à éviter les erreurs de type :

Exception while preparing the app : java.lang.ClassNotFoundException: org.hibernate.ejb.HibernatePersistence

Vider le cache de Glassfish

J’ai déjà parlé du cache de NetBeans et de la manière de le vider. Des problèmes similaires peuvent apparaître avec Glassfish dans d’autres conditions.

Pour vider son cache, il faut commencer par arrêter son serveur d’application, puis supprimer les éléments présents dans :

<Dossier de Glassfish>\glassfish\domains\<Nom de votre domaine>\generated

Après redémarrage, Glasshfish aura un cache vidé et tout propre.