Both sides previous revisionPrevious revisionNext revision | Previous revision |
sysrep:tp1 [2012/11/14 10:58] – 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 : |
| |
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> | wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz |
sur lequel pointe la variable d'environnement $CATALINA_HOME : | |
| |
tar xvzf apache-tomcat-6.0.20.tar.gz | |
| |
Configurer votre environnement pour Apache/Tomcat : | Décompressez l'archive dans le répertoire de votre choix <tomcat> : |
| |
| |
| tar xvzf apache-tomcat-6.0.20.tar.gz |
| |
| |
| 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> |
| |
Puis lancer le serveur Web Tomcat (à l'écoute par défaut sur le port | Puis lancer le serveur Web Tomcat (à l'écoute par défaut sur le port 8080) : |
8080) : | |
| |
<tomcat>/bin/startup.sh | <tomcat>/bin/startup.sh |
| |
Vous pouvez ensuite consulter http://localhost:8080 avec votre | Vous pouvez ensuite consulter http://localhost:8080 avec votre navigateur Web pour vérifier que votre serveur Web est opérationnel. |
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 | Pour changer le port 8080, vous pouvez editer le fichier <tomcat>/conf/server.xml, sans oublier de relancer le serveur Web : |
<tomcat>/conf/server.xml, sans oublier de relancer le serveur Web : | |
| |
<tomcat>/bin/shutdown.sh ; <tomcat>/bin/startup.sh | <tomcat>/bin/shutdown.sh ; <tomcat>/bin/startup.sh |
| |
Il faut maintenant ajouter un administrateur au serveur Web Tomcat | Il faut maintenant ajouter un administrateur au serveur Web Tomcat en ajoutant au fichier de configuration <tomcat>/conf/tomcat-users.xml les lignes suivantes : |
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. |
| ==== 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... |
| |
Relancer le serveur Web. Démarrer l'interface Web d'administration | <code java HelloServlet.java> |
http://localhost:8080/manager/html/ et entrer le login "admin" et le | import java.io.*; |
password "adminadmin". A priori, tout est OK pour la suite. | import javax.servlet.*; |
| import javax.servlet.http.*; |
| |
* Un peu d'aide pour la suite... | public class HelloServlet extends HttpServlet { |
| |
--> http://localhost:8080/docs/ | 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> |
| |
== Serveur Web et Servlet == | Pour compiler votre servlet, utilisez la ligne de commande ci-dessous : |
| |
* Page Web HelloWorld | $ javac -cp "${CATALINA_HOME}/lib/*" HelloServlet.java |
| |
Ajouter une simple page HTML "HelloWorld.html" à votre serveur Web, | |
accessible à l'URL suivante : | |
| |
--> http://localhost:8080/test/HelloWorld.html | 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/ |
| |
Par défaut, il faut ajouter les ressources web dans le répertoire | Pour rendre votre servlet accessible à l'URL suivante : http://localhost:8080/test/MyHelloServlet |
<tomcat>/webapps/. | |
| |
Ajouter l'option permettant à votre serveur web de lister les | il faut ajoutez un fichier web.xml dans WEB-INF/ avec les informations suivantes : |
fichiers contenus dans un répertoire. | |
| |
* Servlet Hello World | <code xml web.xml> |
| <?xml version="1.0" ?> |
| |
Ecrire une servlet "HelloServlet.java". Rendre votre servlet | <web-app> |
accessible à l'URL suivante : | |
| |
--> http://localhost:8080/test/MyHelloServlet | <servlet> |
| <servlet-name>testservlet</servlet-name> |
| <servlet-class>HelloServlet</servlet-class> |
| </servlet> |
| |
A quoi sert le fichier WEB-INF/web.xml ? | <servlet-mapping> |
| <servlet-name>testservlet</servlet-name> |
| <url-pattern>/MyHelloServlet</url-pattern> |
| </servlet-mapping> |
| |
Pour compiler votre servlet, utilisez la ligne de commande ci-dessous : | </web-app> |
| </code> |
| |
$ 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/ |
| |