Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
jetty [Le 06/07/2009, 02:04] – v0njetty [Le 23/05/2017, 13:51] (Version actuelle) – [Installation automatique] suppression d'un paragraphe obsolète depuis 2009 Roschan
Ligne 1: Ligne 1:
-{{tag>BROUILLON Java "Serveur Web" Servlet}}+{{tag>Java Serveur}}
  
 ====== Jetty ====== ====== Jetty ======
  
-Jetty est un serveur HTTP et Servlet open source écrit 100% en Java.+Jetty est un serveur HTTP et conteneur de Servlets open source (tout comme [[:tomcat|Tomcat]]) écrit 100% en Java.
 Il est conçu pour être léger, performant et flexible, Il est conçu pour être léger, performant et flexible,
 ce qui en fait une plate-forme idéale pour servir les requêtes HTTP dynamiques de toute application Java. ce qui en fait une plate-forme idéale pour servir les requêtes HTTP dynamiques de toute application Java.
Ligne 11: Ligne 11:
 ==== Pré-requis ==== ==== Pré-requis ====
  
-Jetty nécessite l'environnement Java, [[:tutoriel:comment_installer_un_paquet|installez]] donc les paquets **[[apt://sun-java6-jdk,sun-java6-jre]]**. +<note important>Paquets obsolètes ?</note> 
 +Jetty nécessite l'environnement Java, [[:tutoriel:comment_installer_un_paquet|installez]] donc les paquets **[[apt>sun-java6-jdk,sun-java6-jre|sun-java6-jdk sun-java6-jre]]**.
 ==== Installation automatique ==== ==== Installation automatique ====
  
-Avec le paquet **jetty** des dépôts Ubuntu, vous obtiendrez au lancement de Jetty une erreur de la forme : +[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt://jetty|jetty]]**.
- +
-  Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory +
- +
-<note important> +
-Il semblerait y avoir un problème avec la version 5 de Jetty (version disponible depuis les dépôts). +
-Il est préférable d'installer Jetty manuellement depuis ses sources plus récentes en attendant qu'il soit disponible dans les dépôts Ubuntu. +
-Voir la section [[#installation_manuelle|Installation manuelle]]. +
-</note>+
  
 ==== Installation manuelle ==== ==== Installation manuelle ====
  
-Télécharger la dernière version stable en date (//6-1-19//) depuis votre répertoire personnel :+Télécharger la dernière version stable en date depuis votre répertoire personnel :
  
   cd ~   cd ~
-  wget http://dist.codehaus.org/jetty/jetty-6.1.19/jetty-6.1.19.zip+  wget http://dist.codehaus.org/jetty/jetty-<version>/jetty-<version>.zip
  
-Décompressez les sources et se rendre dans le dossier de Jetty :+Décompressez les sources :
  
-  unzip jetty-6.1.19.zip+  unzip jetty-<version>.zip
  
 Jetty est dès lors opérationnel sur votre machine. Jetty est dès lors opérationnel sur votre machine.
  
 === Finir l'installation proprement === === Finir l'installation proprement ===
 +
 +Afin de respecter la philosophie GNU/Linux sur l'installation des logiciels (au niveau arborescence), vous ne devez pas laisser un simple dossier de sources dans votre dossier personnel.
 +Le principe est de déplacer ce dossier dans ''/opt/''. D'autre part, ceci rendra le logiciel installé pour tous les utilisateurs du système et non seulement pour vous.
 +
 +== Déplacement vers /opt/jetty ==
 +
 +  sudo mv ~/jetty-<version> /opt/jetty
 +
 +== Utilisateur et droits ==
 +
 +Le propriétaire des sources est vous-même, il est préférable de créer un utilisateur dédié à Jetty, pour cela :
 +
 +  sudo addgroup jetty
 +  sudo adduser jetty --no-create-home --ingroup jetty
 +
 +Un mot de passe sera demandé (considérons "''password''" par exemple).
 +
 +Appliquer les changements à Jetty :
 +
 +  sudo chown -R jetty:jetty /opt/jetty/*
 +  sudo chmod -R 755 /opt/jetty/*
  
 === Automatiser le lancement de Jetty === === Automatiser le lancement de Jetty ===
  
-===== Utilisation =====+Pour cela, nous allons utilisez le script de lancement ''jetty.sh'' des sources de Jetty :
  
 +  sudo ln -s /opt/jetty/bin/jetty.sh /etc/init.d/jetty
 +  sudo update-rc.d jetty defaults
 +
 +Jetty sera désormais lancé à chaque démarrage de la machine.
 +
 +===== Utilisation =====
 ==== Démarrage / Arrêt ==== ==== Démarrage / Arrêt ====
  
Ligne 52: Ligne 71:
 ''CTRL+C'' dans votre terminal arrêtera Jetty. ''CTRL+C'' dans votre terminal arrêtera Jetty.
  
-Toutes fois, près avoir [[#finir_l_installation_proprement|installé proprement]] Jetty et [[#automatiser_le _lancement_de_jetty|automatisé son lancement]], Jetty sera comme beaucoup de services, démarré par défaut et pourra être respectivement démarré, arrêté, redémarré, avec les commandes :+Toutefois, près avoir installé Jetty depuis les dépôts ou bien [[#finir_l_installation_proprement|installé proprement]] Jetty et [[#automatiser_le _lancement_de_jetty|automatisé son lancement]], Jetty sera comme beaucoup de services, démarré par défaut et pourra être respectivement démarré, arrêté et redémarré, avec les commandes :
  
   sudo /etc/init.d/jetty start   sudo /etc/init.d/jetty start
Ligne 58: Ligne 77:
   sudo /etc/init.d/jetty restart   sudo /etc/init.d/jetty restart
  
 +<note important>Si vous avez cette erreur lors du **start** :
 +  \** ERROR: JETTY_HOME not set, you need to set it or install in a standard location
 +Alors il faut setter la variable **$JETTY_HOME** en créant le fichier ///etc/default/jetty// :
 +  sudo vim /etc/default/jetty
 +avec le contenu :
 +  JETTY_HOME=/opt/jetty
 +</note>
 ==== Déployer une application web ==== ==== Déployer une application web ====
  
-Pour déployer une application web, il suffit simplement de copier l'archive ''war'' de l'application dans le dossier ''webapps'' de Jetty. Elle sera déployée automatiquement.+Pour déployer une application web, il suffit simplement de copier l'archive ''war'' de l'application dans le dossier ''webapps'' de Jetty (soit ''/usr/share/jetty/webapps''). Elle sera déployée automatiquement et disponible à l'url [[http://localhost:8080/monapp]] (dans le cas où nous aurions déployé ''monapp.war'').
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
-  * **(en)** [[http://www.mortbay.org/jetty/|Site officiel de Jetty]]+  * **(en)** [[http://www.mortbay.org/jetty/|Site officiel de Jetty]].
  
 ---- ----
  
 //Contributeurs : [[:utilisateurs/v0n|v0n]].// //Contributeurs : [[:utilisateurs/v0n|v0n]].//
-