Installation de glassfish
Ou avec docker cf. https://github.com/payara/docker-payaraserver-full
Mise en place de l'environnement
L’environnement de travail de base sera glassfish 4.1.1 (https://glassfish.java.net) et la base de données H2 (http://www.h2database.com/).
Nous allons commencer par la mise en place et une première étude de glassfish. L’installation s’appuie sur http://www.physics.usyd.edu.au/~rennie/glassfish.html.
Installation de base de glassfish
Nous allons utiliser Payara (http://www.payara.co/) qui propose du support commercial pour glassfish. Télécharger et décompresser glassfish/payara à la racine de votre compte :
Ajouter les variables suivantes dans votre .bashrc, zshrc ou .tcshrc
La partie externe du domaine sera accessible http://localhost:8080/ et là https://localhost:8181/, une console d’administration est disponible ici https://localhost:4848/
Important pour la suite : Les log sont visibles ici ~/payara41/glassfish/domains/domain1/logs/server.log
Stopper glassfish
Changer le mot de passe principal par défaut (changeit
)
Ce mot de passe donne aussi accès aux deux trousseaux de clés par défaut
Démarrer glassfish
Changer le mot de passe administrateur (vide par défaut)
Pour ne pas avoir à saisir le mot de passe systématiquement (export vers ~/.gfclient/pass
):
Sécurité
Optionnel mais fortement conseillé. Générer des certificats propres à ce serveur (ceux par défaut sont connus de tous). Le mot de passe demandé est le mot de passe principal. L’option dname peut/doit être personnalisée.
Stopper glassfish
Indiquer le mot de passe et les paramètres du certificat (à adapter à votre cas) à créer :
Supprimer le certificat par défaut (s1as), en générer un nouveau et l’installer :
this certificate? [no]:
Répondre yes (ou oui)
Démarrer glassfish
Activer https
Gestion des connexions vers les bases de données
Pour permettre à glassfish de se connecter à diverses bases de données, il faut ajouter les drivers jdbc dans ${GLASSFISH_HOME}/lib/
et relancer le serveur.
Par exemple pour mysql si vous avez utilisé maven :
ou pour h2
Il faut ensuite créer des ressources et des pool de connections. Cela peut être fait en ligne de commande.
Pour Mysql
Pour H2
Plus d’explications ici : http://www.payara.co.uk/an_introduction_to_connection_pools_in_glassfis. Le détail pour mysql est donné ici : http://dev.mysql.com/doc/connector-j/en/connector-j-usagenotes-glassfish-config.html et pour h2 ici : http://www.h2database.com/html/tutorial.html#using_toplink
Mise à jour de glassfish
Pour mettre à jour glassfish ou installer des modules complémentaires (Comme le tutoriel JavaEE de Oracle). Attention, cela ne fonctionne pas avec payara.
Divers
Glassfish est fourni avec la base de données Derby, pour supprimer les connections par défaut :
asadmin delete-jdbc-connection-pool --cascade=true DerbyPool asadmin delete-jdbc-connection-pool --cascade=true __TimerPool
Les options de la JVM utilisée peuvent être listées :
asadmin list-jvm-options
Et modifiées, par exemple passage du mode client à serveur, augmentation de la mémoire (par défaut avec Payara), et limitation des informations http (inutile derrière un reverse proxy) : asadmin delete-jvm-options – -client asadmin create-jvm-options – -server asadmin create-jvm-options -Xmx512m asadmin create-jvm-options -Xms512m asadmin create-jvm-options -Dproduct.name=
—- dataentry page —- type : Howto technologie_tags : Java, JavaEE, Glassfish, Payara