Installation de Payara et intégration à NetBeans

Rappels :

Vous devez installer un serveur Jakarta EE. Pour les TPs de ce cours, nous utiliserons Payara 6 compatible avec Jakarta EE 10. A la date d'écriture de ces lignes, la dernière version est la version 6.2024.2 (que j'ai testée) ; vous devez installer cette version ou une version plus récente.

Installation

Téléchargement du zip

Ouvrez la page https://www.payara.fish. Déroulez le menu en haut et choisissez "Community" puis "Download Payara Community". Cliquez sur la dernière version 6 "Web Profile", par exemple la version "Payara Server 6.2024.2 (Web Profile)".

Vous récupérez un fichier zip d'environ 115 Mo (payara-web-6.2024.2.zip par exemple). L'installation de Payara est très simple : Il suffit de dézipper le fichier zip dans un répertoire quelconque. Attention, il peut arriver sous Windows que Microsoft Defender (l'anti-virus par défaut) pense trouver un virus dans le fichier war-util.jar du fichier zip. Il s'agit d'un faux positif et il ne faut pas mettre ce fichier en quarantaine sinon Payara ne démarre pas.

La racine du zip s'appelle payara6. Elle ne tient pas compte des numéros de version après le 6 ; si vous voulez distinguer 2 versions 6, il vous faudra donc dézipper dans un répertoire qui distingue le numéro de version complet.

Choix du répertoire où dézipper pour Windows

Le plus simple et le plus sûr est de dézipper dans un autre répertoire que "C:\Program Files", par exemple un répertoire "C:\autresprogrammes\payara6.2024.2". Attention, évitez les caractères particuliers dans le nom absolu du répertoire (espaces, accents,...).

Intégration de Payara à NetBeans

Lancez NetBeans et allez dans le menu Window de NetBeans et choisissez Services. Une fenêtre apparait à gauche (ça sera un onglet de la fenêtre qui contiendra les projets ; cet onglet est sans doute déjà présent si vous avez déjà utilisé NetBeans) :

Onglet Services

Dans cette fenêtre, clic droit sur l'entrée "Servers" et choisissez "Add Server...". Clic sur "Payara Server". Changez le nom en bas pour refléter la version de Payara que vous venez de télécharger ; par exemple "Payara Server 6.2024.2" (l'image suivante concerne une ancienne version, n'en tenez pas compte). Clic sur Next.

Ajouter serveur Payara

Activation Java Web et EE

Remarque : cette activation peut être différente de ce qui suit, suivant la version de NetBeans que vous installez. Dans certaines versions, l'activation va se faire automatiquement quand vous allez créer votre premier projet Jakarta EE. En ce cas, vous n'aurez pas la nouvelle fenêtre qui vous demande l'activation et vous pouvez aller directement à la section suivante (Désignation et configuration de Payara).

Si vous ne l'avez pas déjà fait, après un petit moment, une nouvelle fenêtre vous demande d'activer des fonctionnalités pour l'utilisation de Java Web et EE. Cliquez sur "Download and Activate...".

Download Payara

La fenêtre suivante vous indique que des plugins vont être installés.

Plugin installer

Cliquez sur "Next".

Dans la fenêtre suivante, acceptez la licence et cliquez sur Install.

Cliquez ensuite sur Finish. NetBeans indique qu'il active Java EE et Java Web. Un message final vous indique qu'ils sont activés.

Désignation et configuration de Payara

Une fenêtre spécifique à Payara apparait. Cliquez sur Browse et indiquez l'endroit où vous avez dézippé Payara. Désignez le répertoire payara6. Un message en bas de la fenêtre vous dit alors que Payara a bien été détecté (la capture d'écran ci-dessous a été prise pour une ancienne version de Payara) :

Download Payara 5.192

Ne vous occupez pas de la 2ème partie "Choose server to download" puisque vous avez déjà téléchargé Payara. Cliquez sur Next.

Domaine de Payara

Laissez les valeurs par défaut. Cliquez sur "Finish".

Dans la fenêtre "Services" du début vous devez maintenant voir le serveur que vous venez d'enregistrer dans NetBeans. Clic droit sur le serveur et choisissez l'option "Properties".

Dans la barre de menu Tools (en haut), vous avez aussi maintenant une option Servers (qui pourra aussi vous servir plus tard pour ajouter de nouveaux serveurs). Si vous la choisissez, vous verrez les mêmes informations sur Payara qu'avec l'option "Properties" :

Informations sur Payara

Si vous cliquez sur l'onglet "Java", vous pouvez choisir le JDK qui sera utilisé pour le fonctionnement de Payara. Si ça n'est pas déjà fait, indiquez JDK 17 pour "Java Platform" :

JDK pour Payara

Si vous n'avez pas déjà enregistré ce JDK dans NetBean, cliquez sur "Manage Platforms" et indiquez le répertoire qui contient le JDK 17, par exemple "C:\autresprogrammes\java\jdk-17", pour ensuite choisir cette plateforme pour Payara. A la date où ces lignes sont écrites, Payara ne supporte pas encore le JDK 21.

Lancement de Payara

Dans l'onglet "Services" > "Servers" dans la partie gauche de NetBeans, clic droit sur le serveur Payara et "Start". Une fenêtre "Output - Payara Server" apparait au bas de la fenêtere de NetBeans. Le contenu du fichier logs du serveur s'affichent au fur et à mesure du lancement. Le lancement peut être long avec une grande pose au début (un petit sablier s'affiche près du nom du serveur pour indiquer une tâche en cours). Le pare-feu peut vous demander l'autorisation d'exécution ; donnez cette autorisation sur le réserau privé (inutile de le donner pour le réseau public). Si tout s'est bien passé, vous ne devez avoir aucun message d'erreur grave dans les logs du serveur (les warnings ne sont pas un problème). Si la fenêtre "Output - Payara Server" n'apparait pas, clic droit sur le serveur et choisir "View Domain Server Logs". Consultez ces logs ; aucun message d'erreur grave ne devrait apparaitre.

Il se peut que les ports HTTP utilisés par Payara soient déjà utilisés par d'autres logiciels et vous aurez alors un message du type "Could not start Payara xxx: HTTP or HTTPS listener port is occupied while server is not running". Voici une aide si vous êtes dans ce cas.

Si le serveur a démarré, vous devriez voir les entrées "Applications" et "Resources" sous l'entrée du serveur :

Services

L'entrée Applications contiendra les applications que vous allez déployer dans le serveur.

Si vous ouvrez l'entrée Resources, vous devriez voir dans "JDBC > JDBC Resources" les ressources de type "base de données" enregistrées sur le serveur. Dans la section suivante vous allez ajouter une ressource JDBC qui sera utilisée dans le TP 1.