| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| sysrep:tp1 [2012/11/14 11:04] – orel | sysrep:tp1 [2024/03/18 15:06] (current) – external edit 127.0.0.1 |
|---|
| |
| |
| == Documentations utiles== | ==== Documentations utiles==== |
| |
| - http://java.sun.com/j2ee/1.4/docs/api/index.html | * http://java.sun.com/j2ee/1.4/docs/api/index.html |
| - http://tomcat.apache.org | * http://tomcat.apache.org |
| - http://ws.apache.org/axis | * http://ws.apache.org/axis |
| - http://ws.apache.org/axis/java/user-guide.html | * http://ws.apache.org/axis/java/user-guide.html |
| |
| == Installation d'un serveur Web Apache Tomcat == | ==== Installation d'un serveur Web Apache Tomcat ==== |
| |
| * Installation sur votre compte (ou dans /tmp)... | ==Installation sur votre compte (ou dans /tmp)...== |
| |
| Télécharger l'archive : | Télécharger l'archive : |
| |
| <code> | |
| wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz | |
| </code> | |
| |
| Décompresser l'archive dans le répertoire de votre choix <tomcat> sur lequel pointe la variable d'environnement $CATALINA_HOME : | wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz |
| | |
| | |
| | Décompressez l'archive dans le répertoire de votre choix <tomcat> : |
| | |
| | |
| | tar xvzf apache-tomcat-6.0.20.tar.gz |
| |
| <code> | |
| tar xvzf apache-tomcat-6.0.20.tar.gz | |
| </code> | |
| |
| Configurer votre environnement pour Apache/Tomcat : | Configurez votre environnement pour Apache/Tomcat en remplaçant <tomcat> par le chemin absolu vers le répertoire que vous avez décompressé : |
| |
| export CATALINA_HOME=<tomcat> | export CATALINA_HOME=<tomcat> |
| Vous pouvez ensuite consulter http://localhost:8080 avec votre navigateur Web pour vérifier que votre serveur Web est opérationnel. | Vous pouvez ensuite consulter http://localhost:8080 avec votre navigateur Web pour vérifier que votre serveur Web est opérationnel. |
| |
| * Configuration avançée | ==Configuration avançée== |
| |
| Pour changer le port 8080, vous pouvez editer le fichier <tomcat>/conf/server.xml, sans oublier de relancer le serveur Web : | Pour changer le port 8080, vous pouvez editer le fichier <tomcat>/conf/server.xml, sans oublier de relancer le serveur Web : |
| Il faut maintenant ajouter un administrateur au serveur Web Tomcat en ajoutant au fichier de configuration <tomcat>/conf/tomcat-users.xml les lignes suivantes : | Il faut maintenant ajouter un administrateur au serveur Web Tomcat en ajoutant au fichier de configuration <tomcat>/conf/tomcat-users.xml les lignes suivantes : |
| |
| | <code xml> |
| <role rolename="admin"/> | <role rolename="admin"/> |
| <role rolename="manager"/> | <role rolename="manager"/> |
| <user username="admin" password="adminadmin" roles="admin,manager"/> | <user username="admin" password="adminadmin" roles="admin,manager"/> |
| | </code> |
| |
| 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. | 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... | Un peu d'aide pour la suite : http://localhost:8080/docs/ |
| |
| --> http://localhost:8080/docs/ | ==Page Web HelloWorld== |
| |
| == Serveur Web et Servlet == | 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 |
| |
| * Page Web HelloWorld | Ajouter l'option permettant à votre serveur web de lister les fichiers contenus dans un répertoire. |
| |
| Ajouter une simple page HTML "HelloWorld.html" à votre serveur Web, accessible à l'URL suivante : | ==Servlet Hello World== |
| |
| --> http://localhost:8080/test/HelloWorld.html | Toujours dans le sous-répertoire test/, nous allons ajouter une servlet. Ecrire une servlet "HelloServlet.java", qui a la structure suivante... |
| |
| Par défaut, il faut ajouter les ressources web dans le répertoire <tomcat>/webapps/. | <code java HelloServlet.java> |
| | import java.io.*; |
| | import javax.servlet.*; |
| | import javax.servlet.http.*; |
| |
| Ajouter l'option permettant à votre serveur web de lister les fichiers contenus dans un répertoire. | public class HelloServlet 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>"); |
| | } |
| | } |
| | </code> |
| | |
| | Pour compiler votre servlet, utilisez la ligne de commande ci-dessous : |
| | |
| | $ javac -cp "${CATALINA_HOME}/lib/*" HelloServlet.java |
| |
| * Servlet Hello World | |
| |
| Ecrire une servlet "HelloServlet.java". Rendre votre servlet accessible à l'URL suivante : | 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/ |
| |
| --> http://localhost:8080/test/MyHelloServlet | Pour rendre votre servlet accessible à l'URL suivante : http://localhost:8080/test/MyHelloServlet |
| |
| Créez le répertoire WEB-INF/ et ajoutez un fichier web.xml pour déclarer votre Servlet. | il faut ajoutez un fichier web.xml dans WEB-INF/ avec les informations suivantes : |
| |
| <code> | <code xml web.xml> |
| <?xml version="1.0" ?> | <?xml version="1.0" ?> |
| |
| |
| <servlet> | <servlet> |
| <servlet-name>MyHelloWorld</servlet-name> | <servlet-name>testservlet</servlet-name> |
| <servlet-class>HelloWorld</servlet-class> | <servlet-class>HelloServlet</servlet-class> |
| </servlet> | </servlet> |
| |
| <servlet-mapping> | <servlet-mapping> |
| <servlet-name>MyHelloWorld</servlet-name> | <servlet-name>testservlet</servlet-name> |
| <url-pattern>/MyHelloWorld</url-pattern> | <url-pattern>/MyHelloServlet</url-pattern> |
| </servlet-mapping> | </servlet-mapping> |
| |
| </code> | </code> |
| |
| Pour compiler votre servlet, utilisez la ligne de commande ci-dessous : | |
| |
| $ javac -cp "${CATALINA_HOME}/lib/*" MyServlet.java | |
| |
| * Utilisation de Paramètres | ==Utilisation de Paramètres== |
| |
| Ecrire maintenant une servlet "ParamServlet.java" qui utilise deux | 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) : |
| 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 | http://localhost:8080/test/MyParamServlet?firstname=tutu&lastname=toto |
| |
| Mettre maintenant en place une page HTML "Form.html" permettant de | 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). |
| saisir les paramètres dans un formulaire et de les "poster" à la | |
| servlet (requête POST). | |
| |
| --> http://localhost:8080/test/Form.html | http://localhost:8080/test/Form.html |
| |
| * Un exemple de JSP (Java Server Page) | ==Un exemple de JSP (Java Server Page)== |
| |
| Ecrire maintenant la JSP HelloWorld.jsp, affichant <count> fois le | Ecrire maintenant la JSP HelloWorld.jsp, affichant <count> fois le message <message>, de la manière suivante : |
| message <message>, de la manière suivante : | |
| |
| --> http://localhost:8080/test/HelloWorld.jsp?message=Hello+World&count=10 | http://localhost:8080/test/HelloWorld.jsp?message=Hello+World&count=10 |
| |
| * Mise en place de HTTPS | ==Mise en place de HTTPS== |
| |
| En vous aidant de l'aide http://localhost:8080/docs/ssl-howto.html, | 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. |
| 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/ | https://localhost:8443/ |
| |