User Tools

Site Tools


sysrep:tp1

This is an old revision of the document!


TP1 : Rappels Web

Documentations utiles

Installation d'un serveur Web Apache Tomcat

Installation sur votre compte (ou dans /tmp)...

Télécharger l'archive :

wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz

Décompresser l'archive dans le répertoire de votre choix <tomcat> sur lequel pointe la variable d'environnement $CATALINA_HOME :

tar xvzf apache-tomcat-6.0.20.tar.gz

Configurer votre environnement pour Apache/Tomcat :

  export CATALINA_HOME=<tomcat>

Puis lancer le serveur Web Tomcat (à l'écoute par défaut sur le port 8080) :

  <tomcat>/bin/startup.sh

Vous pouvez ensuite consulter http://localhost:8080 avec votre navigateur Web pour vérifier que votre serveur Web est opérationnel.

Configuration avançée

Pour changer le port 8080, vous pouvez editer le fichier <tomcat>/conf/server.xml, sans oublier de relancer le serveur Web :

  <tomcat>/bin/shutdown.sh ; <tomcat>/bin/startup.sh

Il faut maintenant ajouter un administrateur au serveur Web Tomcat en ajoutant au fichier de configuration <tomcat>/conf/tomcat-users.xml les lignes suivantes :

  <role rolename="admin"/>
  <role rolename="manager"/>
  <user username="admin" password="adminadmin" roles="admin,manager"/>

Relancer le serveur Web. Démarrer l'interface Web d'administration http://localhost:8080/manager/html/ et entrer le login “admin” et le password “adminadmin”. A priori, tout est OK pour la suite.

Serveur Web et Servlet

Un peu d'aide pour la suite : http://localhost:8080/docs/

Page Web HelloWorld

Par défaut, il faut ajouter les ressources web dans le répertoire <tomcat>/webapps/. Créez un sous-répertoire test/. Ajouter une simple page HTML “HelloWorld.html” à votre serveur Web, accessible à l'URL suivante :

http://localhost:8080/test/HelloWorld.html

Ajouter l'option permettant à votre serveur web de lister les fichiers contenus dans un répertoire.

Servlet Hello World

Toujours dans le sous-répertoire test/, nous allons ajouter une servlet. Ecrire une servlet “HelloServlet.java”, qui a la structure suivante…

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
 
public class HelloWorld extends HttpServlet {
 
    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException
    {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<html>");
        /* ... */
        out.println("</html>");
    }
}

Pour compiler votre servlet, utilisez la ligne de commande ci-dessous :

  $ javac -cp "${CATALINA_HOME}/lib/*" HelloServlet.java

Il faut maintenant créer un répertoire WEB-INF/ dans test/ et déplacer le fichier HelloServlet.class dans le sous-répertoire WEB-INF/classes/

Pour rendre votre servlet accessible à l'URL suivante :

http://localhost:8080/test/MyHelloServlet

il faut ajoutez un fichier web.xml dans WEB-INF/ avec les informations suivantes :

<?xml version="1.0" ?>

<web-app>

    <servlet>
        <servlet-name>testservlet</servlet-name>
        <servlet-class>HelloServlet</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>testservlet</servlet-name>
        <url-pattern>/MyHelloServlet</url-pattern>
    </servlet-mapping>

</web-app>
Utilisation de Paramètres

Ecrire maintenant une servlet “ParamServlet.java” qui utilise deux paramètres, “firstname” et “lastname” et qui affiche le message “Hello World <firstname> <lastname>”. On pourra tester la servlet de la façon suivante (requête GET) :

http://localhost:8080/test/MyParamServlet?firstname=tutu&lastname=toto

Mettre maintenant en place une page HTML “Form.html” permettant de saisir les paramètres dans un formulaire et de les “poster” à la servlet (requête POST).

http://localhost:8080/test/Form.html
Un exemple de JSP (Java Server Page)

Ecrire maintenant la JSP HelloWorld.jsp, affichant <count> fois le message <message>, de la manière suivante :

http://localhost:8080/test/HelloWorld.jsp?message=Hello+World&count=10
Mise en place de HTTPS

En vous aidant de l'aide http://localhost:8080/docs/ssl-howto.html, mettre en place un serveur web sécurisé sur le port 8443. Il faut tout d'abord générer un certificat autosigné avec keytool, puis ensuite configurer le fichier <tomcat>/conf/server.xml comme il faut. Pour vous aider, vous povez consulter les logs de démarrage du serveur dans <tomcat>/logs/catalina.*.log.

https://localhost:8443/
sysrep/tp1.1352892530.txt.gz · Last modified: 2024/03/18 15:05 (external edit)