{{tag>Java Serveur}} ====== Jetty ====== 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, ce qui en fait une plate-forme idéale pour servir les requêtes HTTP dynamiques de toute application Java. ===== Installation ===== ==== Pré-requis ==== 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 ==== === Depuis Ubuntu 9.10 === [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt://jetty|jetty]]**. === Versions antérieures à Ubuntu 9.10 === Avec le paquet **jetty** des dépôts Ubuntu, vous obtiendrez au lancement de Jetty une erreur de la forme : Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 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'elles soient disponible dans les dépôts Ubuntu. Voir la section [[#installation_manuelle|Installation manuelle]]. ==== Installation manuelle ==== Télécharger la dernière version stable en date depuis votre répertoire personnel : cd ~ wget http://dist.codehaus.org/jetty/jetty-/jetty-.zip Décompressez les sources : unzip jetty-.zip Jetty est dès lors opérationnel sur votre machine. === 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- /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 === 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 ==== Depuis les sources, Jetty peut être lancé avec la commande : java -jar start.jar etc/jetty.xml ''CTRL+C'' dans votre terminal arrêtera Jetty. 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 stop sudo /etc/init.d/jetty restart ==== 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 (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 ===== * **(en)** [[http://www.mortbay.org/jetty/|Site officiel de Jetty]]. ---- //Contributeurs : [[:utilisateurs/v0n|v0n]].//