Déploiement d'un exemple d'application dans le conteneur Apache Tomcat

Déploiement d'un exemple d'application dans le conteneur Apache Tomcat

Objectif

Notre objectif est de développer une simple application Java Servlet à l'aide de NetBeans IDE et de la déployer dans un conteneur d'application TomCat à l'aide de la ligne de commande et de l'application Manager.

Système d'exploitation et versions logicielles

  • Système opérateur: Toute distribution Linux récente
  • Logiciel: Apache Tomcat 8, Netbeans 8.2

Exigences

Accès privilégié au système

Difficulté

FACILE

Conventions

  • # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande
  • $ - Étant donné les commandes Linux à exécuter en tant qu'utilisateur non privilégié régulier

Introduction

Les applications basées sur Java exécutées dans des conteneurs d'application sont l'une des configurations d'applications les plus courantes. Java est un langage de programmation robuste, indépendant de la plate-forme, de haut niveau. Un conteneur d'applications, comme Tomcat ou Wildfly (anciennement JBOSS), est en mesure de fournir un contexte standard pour les applications qui y sont déployées, ce qui rend les tâches communes comme la journalisation facile à implémenter, gérant également le rôle du serveur (écoutant les demandes entrantes des clients), ajoutant des capacités comme le clustering et permettre le partage ou le sable de ressources dans le conteneur. Ces fonctionnalités permettent aux développeurs de se concentrer sur le traitement des demandes et la fourniture des réponses, car ils n'ont pas besoin de développer une autre application de serveur pour chaque service.

Dans ce guide, nous développerons un servlet Java trivial en utilisant le Netbeans IDE 8.2, et le déployer dans un conteneur d'Apache Tomcat 8.5, donc les services du servlet sont accessibles sur le réseau. Nous utilisons un bureau Fedora 28 comme machine de laboratoire pour l'exécution du serveur Tomcat et utilisé comme environnement de développement, mais notez que vous pouvez écrire le servlet dans un éditeur de texte, et le construire sur des serveurs de construction dédiés, et utilisons également n'importe quel Tomcat récent Pour déployer votre application, peut-être loin de la machine du développeur. Alors que NetBeans peut gérer le déploiement sur toute sa longueur, nous couvrirons le cas lorsque les outils de développement n'ont pas d'accès direct aux serveurs (ce qui devrait être le cas en production).



Tomcat est si courant qu'il est expédié avec les référentiels de base de toute grande distribution (et également disponibles dans un goudron.gz), et la nature indépendante de la plate-forme de Java facilite le déploiement de conteneurs d'application à presque n'importe où - d'où sa popularité. Si le développeur n'utilise pas de packages dépendants de la plate-forme, son application fonctionnera n'importe où de la même manière. Les problèmes les plus courants proviennent des versions Java (par exemple, vous ne voulez pas déployer une application développée dans Java 1.8 sur un serveur exécutant Java 1.6), ou des packages manquants (un package Java personnalisé utilisé dans l'application, mais pas inclus dans le package distribué), mais ceux-ci devraient sortir dans les premières phases de développement.

Installation

La configuration de l'environnement de laboratoire est assez simple. Nous allons installer et configurer le serveur Tomcat et intégrer l'IDE avec lui, tous deux exécutés sur le même JVM (Java Virtual Machine), et le déploiement fait automatique. Cela garantit qu'il n'y aura pas de problèmes de version Java et rend les tests faciles et rapides. Le serveur Tomcat n'écoutera que localhost en utilisant des ports par défaut et des applications de gestion expédiées avec la distribution.

Serveur Tomcat

Nous devons d'abord installer le serveur Tomcat lui-même. Nous ajoutons l'administrateur WebApps qui peut gérer le déploiement à partir de l'interface Web.

Yum installer tomcat tomcat-webapps.noarch tomcat-admin-webapps.noarch

Notez que nous avons ajouté tomcat-webapps à l'installation. Ceux-ci ne seront pas nécessaires dans ce tutoriel, mais sont des applications de bons exemples avec un code source pour s'habituer davantage aux servlets, JSP (pages Javaserver), etc.

Configuration des utilisateurs administratifs à Tomcat

L'installation par défaut laisse les applications d'administration installées fermées. Pour les ouvrir, nous devons ajouter des mots de passe aux utilisateurs de Tomcat. Nous pourrions ajouter des utilisateurs et des rôles personnalisés, ou intégrer le serveur avec une gestion centrale de l'identité comme un serveur LDAP, mais cela dépasse le cadre de ce tutoriel. Nous utiliserons simplement les rôles par défaut expédiés avec l'installation.

Sur les saveurs RHEL, le fichier de configuration que nous devons ajuster est sur le chemin suivant:

/ usr / share / tomcat / conf / tomcat-users.xml

Le fichier XML ne peut pas être modifié par un utilisateur avec des privilèges normaux. Vous devez travailler avec le matou l'utilisateur ajouté automatiquement par l'installation, ou racine.

C'est un long fichier, mais nous devons modifier uniquement la fin.

Vous verrez les lignes suivantes, tous ont commenté:



          

Ces lignes doivent être non en compositions et un mot de passe doit être ajouté au administrer utilisateur afin d'activer le déploiement sur l'interface Web. Le résultat devrait être quelque chose comme les suivants:

          

Pour l'environnement de laboratoire, nous n'avons pas besoin d'un mot de passe solide, mais à part les tests, utilisez toujours des mots de passe solides. Après avoir ajouté les modifications ci-dessus, enregistrez le fichier.

Démarrage du serveur

Nous sommes prêts à démarrer le serveur Tomcat en utilisant systemd:

# systemctl start tomcat

Pour démarrer Tomcat après le démarrage, nous pouvons également l'activer, mais cette étape est facultative.

# SystemCTL Activer Tomcat

Tester les paramètres

Maintenant que le serveur est en place, nous testerons nos paramètres. Diriger un navigateur Web vers le port 8080 de la machine, et cliquez sur «l'application Manager» en haut à droite de la page fournie par Tomcat. Une fenêtre contextuelle devrait apparaître, demandant des informations d'identification pour la demande de gestionnaire Tomcat. Fournir le nom d'utilisateur administrer et le mot de passe qui a été défini dans la section précédente:

Connexion à l'application Tomcat Manager

Si notre configuration est correcte et que nous fournissons les bonnes informations d'identification, nous devrions voir une page colorée, et en plus de la liste des applications déployées, fournie par l'application Manager, similaire à la capture d'écran ci-dessous:



Liste des applications déployées dans Tomcat

Noter la /exemples Application déployée - Ceci est fourni par le tomcat-webapps Package installé plus tôt.

Avec cela, la configuration Tomcat est terminée, et nous pouvons accéder à l'interface de gestion.

Configuration des NetBeans

Pour avoir un environnement de développement, nous installerons NetBeans IDE (Environnement de développement intégré). Nous pourrions utiliser n'importe quel autre, voire un simple éditeur de texte. Le NetBeans IDE peut être téléchargé à partir de la page d'accueil de NetBeans. Après avoir téléchargé le programme d'installation, nous devons ajouter l'exécution directement au script d'installation:

$ chmod + x netbeans-8.2-linux.shot

Et commencez-le:

./ netbeans-8.2-linux.shot

Un assistant graphique apparaîtra et guidera le processus d'installation. Après une installation réussie, une icône Netbeans apparaît sur le bureau. Cliquer dessus, il démarrera l'IDE.

Développer l'exemple d'application

Comme ce tutoriel ne concerne pas le développement de base, nous utiliserons les sorciers fournis par l'IDE pour créer l'exemple d'application que nous prévoyons de déployer dans Tomcat.

Création d'un projet Web

Nous allons créer un projet Web dans NetBeans. Ce processus garantira que notre projet est prêt à être déployé dans un conteneur Tomcat avec un effort minimal. Pour ce faire, démarrez l'IDE et sélectionnez Fichier -> Nouveau projet dans le menu, puis choisissez Java Web -> Application Web:



Création d'une application Web dans NetBeans

Nous devons nommer le projet et sélectionner le chemin du chemin dans le système de fichiers. Notez que sur la capture d'écran ci-dessous, un chemin sans défaut / var / projets est sélectionné. Ce répertoire est créé à la main et donné à l'utilisateur du système d'exploitation exécutant l'IDE. Le chemin par défaut se situe dans le répertoire domestique de l'utilisateur exécutant l'IDE, donc par défaut, les droits du système de fichiers ne seront pas un problème tout en travaillant sur le projet. Si vous devez mettre à vos projets un autre endroit, vous devez vous assurer que vous pouvez écrire à cet emplacement spécifique.

Ajout de nom et de chemin vers le projet dans NetBeans

Le nom du projet peut être assez n'importe quoi, mais comme nous allons principalement avec les valeurs par défaut, nous utilisons webapp01 Cela fera partie de l'URL où l'application est accessible.

Sur l'écran suivant, nous devons spécifier le serveur cible, la version Java et le chemin de contexte. Nous choisissons Apache Tomcat ou Tomee, et laisser les autres options sur les défauts.

Paramètres du serveur dans NetBeans

Nous devons fournir le chemin du serveur Tomcat, à savoir le Catalina_Home variable d'environnement, qui est / usr / share / tomcat Par défaut sur les saveurs Rhel.

Nous pouvons voir que notre nouveau projet n'est pas tout à fait vide, l'IDE a généré un contenu par défaut sur la création de projet. Nous ajoutons un nouveau package aux packages source qui remplaceront le package par défaut:



Ajout d'un package au projet dans NetBeans

Nous devons nommer le package. Notez que le nouveau package sera créé sur le chemin du projet:

Nommer le nouveau package dans Netbeans

Ensuite, nous ajoutons un nouveau servlet à notre projet et le plaçons dans le nouveau package que nous avons créé:

Ajout d'un nouveau servlet au projet dans Netbeans

Nous devons nommer le servlet. Son code source sera placé dans le package (qui est un répertoire à ce stade de développement) sur le chemin du projet.

Nommer le nouveau servlet à Netbeans

Le nom que nous choisissons pour le servlet ici est information système, Comme il fournira des informations sur l'environnement logiciel sur lequel il fonctionne. Ce nom fera également partie de l'URL, à savoir le point de terminaison où le service est accessible.

Code d'écriture

Nous verrons que notre nouveau servlet est déjà pré-peupulé avec un exemple de code. Nous en garderons la majeure partie, nous remplacerons les lignes mises en évidence:



Remplacer le code de modèle dans NetBeans

En utilisant l'éditeur de code source de l'IDE, nous écrasons les lignes mises en évidence avec les suivantes:

dehors.println ("Informations système"); dehors.println (""); dehors.println (""); dehors.println ("

Servlet Systeminfo à "+ demande.getContextPath () + "

"); dehors.println (""")
  • de
  • es
  • fr
  • id
  • ms
  • pl
  • pt
© Ilinuxgeek
Site sur les systèmes d'exploitation Linux et Windows