480 likes | 598 Views
TomCat. M2 – MIAGE/SID Azim.Roussanaly@univ-nancy2.fr. Sommaire. Applications distribuées et web Tomcat Environnement de développement. Genèse. Application informatique. Genèse. Composant. …. Composant. Genèse. Présentation. Logique applicative. Accès aux données. Client/Serveur.
E N D
TomCat M2 – MIAGE/SID Azim.Roussanaly@univ-nancy2.fr
Sommaire • Applications distribuées et web • Tomcat • Environnement de développement Miage SID
Genèse Application informatique Miage SID
Genèse Composant … Composant Miage SID
Genèse Présentation Logique applicative Accès aux données Miage SID
Client/Serveur Présentation Données Logique applicative « Client lourd » Serveur Client Miage SID
n-tier Présentation Données Logique applicative Architecturemultiniveaux Serveur Serveur Client Miage SID
Web dynamique NavigateurWeb Données Logique applicative Client « léger » Serveur Serveur Client Miage SID
Caractéristiques d’un client web • Navigateur : client • HTML (+JavaScript, +DHTML, XML/XSL) = moyen de définir l’interface utilisateur • HTTP = moyen d’échange d’information entre le client et le serveur Miage SID
Web dynamique • CGI : Common Gateway Interface • Interface entre le système d’exploitation du serveur et le serveur Web • Programmation en C, Python, Perl… • PHP : Hypertext Preprocessor • Interpréteur intégré au serveur Web • Langage dédié • ASP : Active Server Page (Microsoft) • J2EE: Solution JAVA Miage SID
Solution JAVA • J2EE: Java 2 Enterprise Edition • Renommé Java EE 5 • Sun MicroSystem • Definit un standard unifié pour le développement de composants applicatifs • Fournit un ensemble minimal d’API Miage SID
Conteneur EJB Conteneur WEB EJB Servlets Pages JSP RMI/IIOP JNDI JTA JDBC JavaMail JMS JAAS RMI/IIOP JNDI JTA JDBC JavaMail JMS JAAS Serveur J2EE Miage SID
Conteneurs WEB • Jakarta Tomcat • Jetty (intégré à JBoss et à JOnAS) • Caucho Resin • BEA WebLogic • IBM WebSphere • Macromedia JRUN • Oracle Application Server… Miage SID
TomCat • Conteneur de Servlets et JSP conforme à J2EE • Apache Software Fondation (libre) • Intègre un serveur HTTP • Le plus courant des gratuits • Configuration pour « spécialiste » Miage SID
Exercice • Installation d’un serveur Tomcat • Mise en place d’un environnement de développement • (Java ) • Tomcat • Eclipse Miage SID
Download Tomcat • http://tomcat.apache.org/ • Installateur windows • Distribution « normale » • Déployeur Miage SID
Installation du serveur de déploiement (service Windows)
Installation du serveur de développement pour un usage local
Install • Décompresser la dist « normale » dans le répertoire d’installation • Exemple c:\ • (pas besoin d’un service windows) Miage SID
Arborescence • Bin : scripts et éxécutables • Conf : • Server.xml : port principal (80), ports de monitoring… • Context.xml : applications disponibles • Tomcat-users.xml : utilisateurs et droits associés • Web.xml : propriétés par défaut • Lib : • Librairies de Tomcat et communes aux applications • Logs • Journaux • Webapps • Dossiers pour chaque application • Work • Espace de travail interne Miage SID
Restrictions • Pas de service Windows • Démarrage à partir de l’IDE • Port standard (80) • Pas d’obligation de faire un mapping dans un fichier web.xml • Redémarrage automatique en cas de modification des *-config.xml Miage SID
server.xml <!-- A "Connector" represents an endpoint by which requests … Miage : changement du port en 80 pour le développement --> <Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> Miage SID
web.xml <!-- Miage : autoriser le listage des dir … --> <servlet> <servlet-name>default</servlet-name> <servlet-class> org.apache.catalina.servlets.DefaultServlet </servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>listings</param-name> <param-value>true</param-value> </init-param> <load-on-startup>1</load-on-startup></servlet> Miage SID
web.xml <!— <servlet> <servlet-name>invoker</servlet-name> <servlet-class> org.apache.catalina.servlets.InvokerServlet </servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet>--> Miage SID
web.xml <!—<servlet-mapping> <servlet-name>invoker</servlet-name> <url-pattern>/servlet/*</url-pattern> </servlet-mapping> --> Miage SID
context.xml <Context reloadable="true" privileged="true"> <WatchedResource>WEB-INF/web.xml</WatchedResource> <WatchedResource> WEB-INF/struts-config.xml </WatchedResource> <WatchedResource> WEB-INF/faces-config.xml </WatchedResource> … Miage SID
Download Eclipse • http://www.eclipse.org/downloads/moreinfo/jee.php • Eclipse IDE for Java EE Developers • Contient les plugins adéquats Miage SID
Install • Décompresser la dist dans le répertoire d’installation • Exemple c:\ Miage SID
Configurer le serveur de développement • Démarrer Eclipse • Onglet Servers (menu contextuel): • > New > Server… • Recopier les fichiers : • context.xml, • server.xml, • web.xml à partir des originaux de <Tomcat>/conf Miage SID
Test • Site de téléchargement : • http://www.coreservlets.com/Apache-Tomcat-Tutorial/tomcat6.0-files/intro-app-eclipse.zip • Ou intro-app-eclipse.zip • Démarrer Eclipse : • File>Import>General>Archive… • Ajouter l’application intro au serveur • Onglet Servers>Tomcat…>Menu contextuel>Add an remove project • Démarrer le serveur • Onglet Servers>Tomcat…>Menu contextuel> • Tester à partir d’un navigateur • http://localhost/intro/Hello.jsp Miage SID
Déploiement • Le déploiement consiste à transférer l’application vers le serveur TomCat d’exploitation • Solution simple : recopier le contenu de WebContent dans : • <TomCat>/webapps/<context> • NB: généralement, on ne déploie pas les sources • Solution alternative : compresser et archiver le contenu de WebContent avant la recopie • Solution à distance : utiliser le deployeur (ant) Miage SID
Exercice • Déployer l’application intro Miage SID