Télécharger au format PDF
Transcription
Télécharger au format PDF
ISI 1022 : Programmation Internet et Java Déploiement d ’applications Web Programmation Internet et Java Jean-Noël Sorenti. Année 2002/2003 Déploiement d ’application Web Utilisation de Jakarta Tomcat ISI 1022 : Programmation Internet et Java 1 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Déploiement d’applications Web l Programmation Internet et Java Une application Web est déployée sous un serveur d’application : • Tomcat de Apache • Websphere d ’IBM • Etc … l En développement, on a un ‘autodéploiement’ sur des serveurs de test : • Tomcat pour JBuilder • WTE pour Visual Age d ’IBM 2 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Déploiement d’applications Web l Programmation Internet et Java Une application Web J2EE est composée : • de pages statiques : • *.html, *.htm, *.javascript • de pages dynamiques : (1) , *.css, *.jpeg, *.giff • *.shtml, *.jsp (servlets jsp) • de Servlets et de code métier java : • *.class dans des répertoires • d ’un fichier (descripteur) de déploiement : • web.xml 3 (1) : Un fichier JavaScript est statique coté ‘serveur’ ! Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Descripteur de déploiement l Programmation Internet et Java Le descripteur de déploiement est un fichier nommé web.xml comprenant : • La déclaration de l ’application Web • La déclaration des Servlets : nom + nom de classe + paramètres de configuration : • Les Servlets seront instanciées dynamiquement grâce au ‘ nom de classe ’. • Le mapping des Servlets : • une table de correspondance va associer le ‘ path ’ de l ’URL à sa servlet, par exemple /bonjour pour la servlet bonjour. 4 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Descripteur de déploiement l Programmation Internet et Java Selon le serveur, le fichier de déploiement peut varier : • Exemple avec Tomcat : <?xml version="1.0" encoding="ISO-8859-1" ?> <web-app> <servlet> <servlet-name>bonjour</servlet-name> <servlet-class>appli.servlets.Bonjour</servlet-class> </servlet> ... <servlet-mapping> <servlet-name>bonjour</servlet-name> <url-pattern>/bonjour</url-pattern> </servlet-mapping> ... 5 Utilisation multiple du mapping avec <url-pattern> : à <url-pattern>/helloword</urlpattern> correspond : /helloworld. à <url-pattern>/foo/*</urlpattern> correspond : /foo/blah /foo/index à <url-pattern>*.jsp</urlpattern> correspond : tous les fichiers jsp. (cette servlet existe dans le serveur d ’application, c ’est la servlet qui gère les fichiers jsp !). Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Descripteur de déploiement l Programmation Internet et Java Autre descripteur de déploiement : • Exemple avec W.T.E d ’IBM : <?xml version="1.0" encoding="ISO-8859-1" ?> <webapp> <servlet> <name>bonjour</name> <path>/bonjour</path> <code>appli.servlets.Bonjour</code> <autostart>false</autostart> </servlet> ... 6 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Structure de répertoires l Programmation Internet et Java Notre application Web est structurée en répertoires. Nous retrouverons dans ces répertoires toutes les composantes de l ’application : • Les fichiers ‘ Web ’ : html, javascript, jsp, shtml, … • Le descripteur de déploiement • Le code des Servlets • Le code métier de l ’application sous forme de classes ou de .jar 7 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Programmation Internet et Java Structure de répertoires Répertoire Racine Descripteur de déploiement : doit s’appeler web.xml Index.html annonce.jsp WEB-INF web.xml classes Répertoire contenant WEB-INF ainsi qu’une hiérarchie de fichiers Web. Doit être nommé classes. Contient les classes java de l ’application. package lib lib any.jar sous-package X.class 8 Bien respecter les noms des répertoires imposés : WEB-INF, classes, lib. Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Fichiers WAR l Programmation Internet et Java Pour faciliter le déploiement, les applications Web peuvent être archivées en un unique fichier de type WAR : • Même structure interne des répertoires que celle • • • décrite précédemment (répertoire archivé). Le fichier portera l ’extension .war. Un .war n ’est en réalité qu ’un fichier .zip ou .jar Analogie au classes packagées dans un .jar 9 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Création de fichiers WAR l Programmation Internet et Java A l ’aide de l ’utilitaire jar du JDK : • jar cvf ../simpleapp.war * • Options : •c •v •f : créer un nouveau fichier jar. : affichage des commentaires : spécification du nom. • La commande doit être exécutée à partir du répertoire racine de l ’application Web. 10 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Déploiement de fichiers WAR l l Programmation Internet et Java Selon le conteneur d ’application (Serveur d ’application), les méthodes de déploiements peuvent aussi varier : Exemple avec le répertoire ‘webapps’ de Tomcat : • Chaque sous répertoire est une application Web. • L ’application Web par défaut d ’appelle ROOT. • Il suffit de copier le .war dans le répertoire webapps. • Si aucun répertoire ne correspond au .war alors ce dernier est éclaté au démarrage. 11 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Utilisation de Jakarta - Tomcat l Programmation Internet et Java Tomcat est un serveur d ’application Web publique. • C ’est avant tout un serveur HTTP • Il peut héberger plusieurs applications. • Toutes les applications sont lancées par la même JVM • • • (Java Virtual Machine). Tomcat est un serveur implémenté en Java. Existe sous différentes plate-formes (Windows, Linux). Peut être téléchargé à l ’adresse : http://jakarta.apache.org 12 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Utilisation de Tomcat l Programmation Internet et Java Pour pouvoir utiliser Tomcat (sous winNT) : • On doit installer une JVM qui va exécuter le • • serveur. Pour cela, on peut installer directement le JDK de Java (qui comprend les outils de développements ainsi qu’une JVM Standard). Installer Tomcat Définir les points d ’entrés sous forme de variable d ’environnement : • JAVA_HOME • CATALINA_HOME : répertoire ou est installé le JDK : répertoire ou est installé Tomcat • Lancer CATALINA_HOME\bin\startup.bat 13 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Programmation Internet et Java Déployer une application Web sous Tomcat l Pour déployer une application web : • copier le répertoire de l ’application Web ou le fichier WAR dans : • CATALINA_HOME/webapps/ • On a une application par défaut comprenant un répertoire par défaut nommé : • CATALINA_HOME/root/ 14 Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Programmation Internet et Java Tester une application Web sous Tomcat l l Au lancement, le serveur est à l’écoute sur le port 8080 pour le protocole http. (configurable dans le fichier server.xml). On peut demander une ressource via un butineur sous forme d ’URL : • http://adresseMachine:8080/sousApp/ressource l Pour tester, on peut commencer par demander des pages statiques (html,...). 15 Butineur est une autre façon d’appeler un Web Browser ou Navigateur Web. Jean-Noël Sorenti – Année 2002/2003 ISI 1022 : Programmation Internet et Java Exercice : l Programmation Internet et Java Un bon entraînement : • Déploiement de Tomcat sous Windows NT ou sous Linux : • Le jdk et doc téléchargeables sous java.sun.com • Tomcat et doc téléchargeables sous jakarta.apache.org • Test d’une application : • avec InternetExplorer sous Windows on Konqueror sous Linux. 16 Jean-Noël Sorenti – Année 2002/2003