Cours 1: Introduction et protocole HTTP
Le but de ce cours est d'offrir un panorama des différentes technologies qui seront traitées dans le cours. Mais aussi de bien comprendre le fonctionnement du protocole HTTP.
Les transparents: cours1.pdf20
TP 1: HTTP
Ce TP traitera du protocole HTTP.
Liens utiles
- Session Management:
- HTTP:
Cours 2: Introduction à J2EE et Servlets
Le but de ce cours est d'introduire J2EE, et de comprendre le fonctionnements des servlets.
TP 2: Servlets
Installation d'un environnement de développement
Ce TP traitera des servlets. Avant toute chose vous devrez installer un environnement de développement : un JDK récent (1.6_13 ou supérieur), et un outil de développement : soit Netbeans, soit Eclipse.
Je recommande néanmoins Netbeans 6.8 version Entreprise, téléchargeable à cette adresse : http://netbeans.org/downloads/index.html30, prenez la version de 216 Mo si vous ne ferez que du java avec, sinon, celle de 288 Mo. Lors de l'installation, cliquez sur le bouton "customize" ou "personnaliser" et cochez la case pour installer tomcat. Netbeans est très bien pour sa simplicité d'installation (on installe et c'est fini) et son adaptabilité à JEE6, mais il est un peu plus lourd qu'Eclipse en terme de ressources mémoire.
Ceux qui préfèrent travailler avec Eclipse devront 1) avoir une version récente d'Eclipse (Ganymède ou Galliléo), 2) devront télécharger Tomcat séparément, 3) devront récupérer le plugin tomcat pour Eclipse et 4) le configurer. Les liens sont ci-dessous :
Travail à effectuer
Le TP va s'étendre sur deux séances.
Cours 3
TP 3: Filtres (on le fera plus tard ! Passez au TP 4 !)
Feuille de TP: TP3.pdf37
Cours 4: JSP / JSTL / EL
- Support de cours : Cours4.pdf40
- Autre support sur JSTL (à partir de la page 61) et sur EL (à partir de la page 30) : jsp2.pdf41
TP 4: JSP / JSTL / EL / exemple d'architecture en couches
Pour ce TP vous travaillerez soit avec netbeans 6.8 et Glassfish v3, soit avec tomcat, mais dans ce dernier cas, pour la partie utilisant la librairie JSTL, vous devrez ajouter les fichiers .jar de JSTL dans votre projet.
Travail à faire :
- Regarder le TP de l'an dernier et sa correction (1h maxi) : tp3Avec_Correction.doc42
- Faire le TP de cette année : TP3 2010 : Jsp / JSTL / EL / Servlets et architecture en couches43 Remarque : nécessite un serveur compatible Java EE 6 (glassfish v3 pour le moment) et un JDK récent (version supérieure à 6_13)
Liens utiles:
La JSTL: http://jakarta.apache.org/site/downloads/downloads_taglibs-standard-1.0.cgi44
Si vous travaillez avec eclipse ou tomcat, la JSTL n'est pas installée par défaut sur le serveur : vous devrez mettre jakarta-taglibs-standard-1.0.6/lib/standard.jar et jakarta-taglibs-standard-1.0.6/lib/jstl.jar dans le dossier WEB-INF/lib de votre webapp et c.tld dans WEB-INF/tld/
N'oubliez pas la ligne suivante dans vos JSPs !
<%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c" %>
Cours 5 : Templating avec pages JSP, étude d'un vrai projet, Bases d'Ajax
Cours 6 : Framework javascript Dojo
Ceux qui n'ont pas terminé le TP précédent, finissez-le !
Cours 7 : utilisation d'une base de données avec Java Persistence Api
Cours 8 : concepts avancés de JPA, début du mini projet
Notes de bas de page
1 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours_1.3a_Introduction_et_protocole_HTTP
2 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#TP_1.3a_HTTP
3 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Liens_utiles
4 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours_2.3a_Introduction_.c3.a0_J2EE.c2.a0et_Servlets
5 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Support_de_cours
6 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#TP_2.3a_Servlets
7 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Installation_d'un_environnement_de_d.c3.a9veloppement
8 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Travail_.c3.a0_effectuer
9 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours_3
10 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours.c2.a03bis.3a_Filtres
11 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#TP.c2.a03.3a_Filtres_(on_le_fera_plus_tard_!_Passez_au_TP.c2.a04_!)
12 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Liens_utiles_2
13 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours_4.3a_JSP_.2f_JSTL_.2f_EL
14 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#TP_4.3a_JSP_.2f_JSTL_.2f_EL_.2f_exemple_d'architecture_en_couches
15 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Liens_utiles.3a
16 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours_5_.3a_Templating_avec_pages_JSP.2c_.c3.a9tude_d'un_vrai_projet.2c_Bases_d'Ajax
17 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours_6_.3a_Framework_javascript_Dojo
18 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours_7_.3a_utilisation_d'une_base_de_donn.c3.a9es_avec_Java_Persistence_Api
19 http://miageprojet2.unice.fr/Master_MIAGE_1/Applications_Web#Cours_8_.3a_concepts_avanc.c3.a9s_de_JPA.2c_d.c3.a9but_du_mini_projet
20 http://miageprojet2.unice.fr/@api/deki/files/69/=cours1.pdf
21 http://miageprojet2.unice.fr/@api/deki/files/70/=tp1.pdf
22 http://miageprojet2.unice.fr/@api/deki/files/71/=src.tar.gz
23 http://www.informit.com/articles/printerfriendly.aspx?p=332851
24 http://en.wikipedia.org/wiki/HTTP
25 http://www.w3.org/Protocols/rfc1945/rfc1945
26 http://www.w3.org/Protocols/rfc2616/rfc2616.html
27 http://www.ietf.org/rfc/rfc2068.txt
28 http://miageprojet2.unice.fr/@api/deki/files/77/=cours2_(3).pdf
29 http://java.sun.com/products/servlet/2.2/javadoc/index.html
30 http://netbeans.org/downloads/index.html
31 http://tomcat.apache.org/
32 http://www-128.ibm.com/developerworks/library/os-ecl-manage/
33 http://www.eclipsetotale.com/tomcatPlugin.html
34 http://en.opensuse.org/Java/tomcat5
35 http://miageprojet2.unice.fr/@api/deki/files/73/=TP2.pdf
36 http://miageprojet2.unice.fr/@api/deki/files/83/=Cours3bis.pdf
37 http://miageprojet2.unice.fr/@api/deki/files/84/=TP3.pdf
38 http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/Filter.html
39 http://java.sun.com/products/servlet/Filters.html
40 http://miageprojet2.unice.fr/@api/deki/files/85/=cours_4.pdf
41 http://miageprojet2.unice.fr/@api/deki/files/767/=jsp2.pdf
42 http://miageprojet2.unice.fr/@api/deki/files/765/=tp3Avec_Correction.doc
43 http://miageprojet2.unice.fr/Programme_des_enseignements/Applications_Web/TP3_%3a_Jsp_%2f%2f_JSTL_%2f%2f_EL_%2f%2f_Servlets_et_architecture_en_couches
44 http://jakarta.apache.org/site/downloads/downloads_taglibs-standard-1.0.cgi
45 http://miageprojet2.unice.fr/Programme_des_enseignements/Applications_Web/Etude_d'un_vrai_projet%2c_templating_avec_JSP
46 http://miageprojet2.unice.fr/@api/deki/files/761/=Dojo_MBuffa_CarolMcDonald2010.ppt
47 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/Cours_web_2.0_2009/Frameworks_javascript%2f%2fAjax
48 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/Cours_web_2.0_2009/Frameworks_javascript%2f%2fAjax/TP_Dojo_1.3.2
49 http://miageprojet2.unice.fr/Programme_des_enseignements/Applications_Web/TP7_Applications_web_%3a_utilisation_d'une_base_de_donn%c3%a9es
50 http://miageprojet2.unice.fr/Programme_des_enseignements/Applications_Web/TP7_%3a_gestion_des_relations%2c_d%c3%a9but_du_mini_projet