{{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 ====
Paquets obsolètes ?
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 ====
[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt://jetty|jetty]]**.
==== 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
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
==== 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]].//