Bienvenue dans cet espace de la matière Architecture des SI "Java Enterprise Edition JEE", Travaux Pratiques TPs.
Enseignants:
Enseignant du Cours: Monsieur Heithem Abbes. CLOSED ! OLD Web Page ! The new one is:
Enseignante des TPs: Thouraya Louati. https://sites.google.com/site/thlouati/jee2015-2016
Année Universitaire: 2014/2015 (Second Semestre)
Section: IF4 (Emplois du temps: IRSA / ISEM / ISIAD)
Ingénieurs en Informatique 4ème année.
Faculté des Sciences de Tunis FST Département des Sciences de l'Informatique
Soutenances [Projet JEE (Devoir surveillé DS)]
Veuillez assister aux soutenances (dans vos groupes de TPs) :
Date : Demain Vendredi 22/05/2015 à la salle 'C' à partir de 11h30
Samedi 23/05/2015 à la salle 'C' à partir de 09h45
N.B : Veuillez apporter vos machines pour faire la démonstration du projet (la version que vous avez déjà envoyée).
Veuillez publier cette annonce sur le groupe FB.
Annonce publiée le 21/05/2015.
L'énoncé du TPs 8 (EJB MDB - JPA - JMS) est disponible sur le tableau 10 en bas de la page
(y compris les figures TPs 7 et TPs 8).
Nouvelle date limite de remise du projet JEE : Jeudi 14 Mai 2015
Annonce
Projet JEE (Devoir surveillé DS)
Organisez-vous en binômes pour le projet JEE. Chaque binôme est censé m’envoyer ses coordonnées avant Dimanche 26/04/2015.
Pour ceux qui comptent travailler en monôme, sont censés aussi m’envoyer leurs coordonnées. N.B : Ils resteront en monôme jusqu’à la fin du projet.
NB : Mentionnez vos noms, prénoms, amphi (ISIAD, IRSA ou ISEM).
(Courriel: thouraya.louati@gmail.com)
Veuillez publier cette annonce sur le groupe FB
annonce publiée le 24/04/2015
Vous trouvez sur ce tableau le projet et la liste des binômes / monômes.
Date de publication : Dimanche 26 Avril 2015
Date limite de remise du projet : Lundi 11 Mai 2015 Jeudi 14 Mai 2015
( à cette adresse thouraya.louati@gmail.com)
Projet / Liste
Affichage
Téléchargement
Date
Veuillez me signaler en cas de faute sur la liste.
annonce publiée le 25/04/2015
Tous les détails du TPs 1 sont disponibles sur le tableau 3 en bas de la page (énoncé, installation de l'environnement de développement etc ..) et la correction (première alternative).
Tous les détails du TPs 2 sont disponibles sur le tableau 4 en bas de la page y compris le travail à faire durant les vacances.
Tous les détails du TPs 3 sont disponibles sur le tableau 5 en bas de la page y compris le travail à faire pour la séance de TPs de la semaine du 06/04.
Tous les détails du TPs 4 (JSTL & JSF) sont disponibles sur le tableau 6 en bas de la page y compris le travail à faire pour la séance de TPs de la semaine du 13/04.
Tous les détails du TPs 5 (Règles de navigation, Les validateurs et les convertisseurs) sont disponibles sur le tableau 7 en bas de la page.
Tous les détails du TPs 6 (JSF - Devinette - Template (Facelets templating)) sont disponibles sur le tableau 8 en bas de la page. Pour ceux qui n’ont pas terminé la partie « JSF Template tags: Facelets templating », ils doivent la terminer pour la prochaine séance de TPs.
Tous les détails du TPs 7 (JSF - EJB - JPA) sont disponibles sur le tableau 9 en bas de la page.
Description:
Horaire
Séances TPs: Séance 1 (déjà faite)
Vendredi:27/02/2015 IRSA/ISEM
Samedi: 28/02/2015 IRSA/ISEM
Mercredi :04/03/2015 ISIAD
Séance 2 (déjà faite)
Vendredi:13/03/2015 IRSA/ISEM/ISIAD
Samedi: 14/03/2015 IRSA/ISEM
Séance 3 (déjà faite)
Vendredi:03/04/2015 IRSA/ISEM/ISIAD
Samedi: 04/04/2015 IRSA/ISEM
Séance 4 (déjà faite)
Vendredi:10/04/2015 IRSA/ISEM/ISIAD
Samedi: 11/04/2015 IRSA/ISEM
Séance 5 (déjà faite)
Vendredi:17/04/2015 IRSA/ISEM/ISIAD
Samedi: 18/04/2015 IRSA/ISEM
Séance 6: (déjà faite)
Vendredi:24/04/2015 IRSA/ISEM/ISIAD
Samedi: 25/04/2015 IRSA/ISEM
Séance 7: (déjà faite)
Vendredi:08/05/2015 IRSA/ISEM/ISIAD
Samedi: 09/05/2015 IRSA/ISEM
Séance 8: (déjà faite)
Vendredi:15/05/2015 IRSA/ISEM/ISIAD
Samedi: 16/05/2015 IRSA/ISEM
Amphi ISIAD:
Séance : Vendredi 13h45 - 15h15
G2 TP : PM ; G3 TP : JEE
Séance : Vendredi 15h:15 - 16h45
G3 TP : PM ; G1 TP : JEE
Séance : Vendredi 16h45 - 18h15
G1 TP : PM ; G2 TP : JEE
Amphi ISEM + IRSA :
Séance : Vendredi 11h30 - 13h00
G2 TP : PM ; G3 TP : JEE
Séance : Samedi 09h45 - 11h15
G3 TP : PM ; G1 TP : JEE
Séance : Samedi 11h30 - 13h00
G1 TP : PM ; G2 TP : JEE
Salle C (Micro 4) est au premier étage du bâtiment
près de la buvette des étudiants.
Groupes TP IF4 (ISIAD ISEM/IRSA)
Description du cours
Ce cours est composé de deux parties:
- Partie théorique: Étudier l'architecture des SI et le développement d'applications web avec JEE.
(Les pdfs du cours sont disponibles sur cette URL)
- Partie pratique: Pré-requis: Du point de vue pratique, ce cours suppose que l'étudiant maîtrise le langage de
programmation Java, la langage HTML, le langage Javascript (voir au bas de cette page
quelques liens de rappel).
Cours: Documents:
1
Type
Nom
Lien
Partie 1 : Introduction aux architectures des systèmes d’information
Architectures 1 et 2-tiers
Partie 2 : Architectures 3-tiers
Partie 3 : Servlets & JSP
Partie 4 : JSF (Java Server Faces)
Partie 5: Les architectures n-tiers
Partie 6 : Les Entreprise Java Beans (EJB)
Volume Horaire Cours: 1h30 par semaine.
TPs: Documents:
2
Type
Nom
Description du cours
Livre: Web Application Architecture (Principles, Protocols and Practices)
Livre: JavaEE 6 Version HTML
Livre: JavaEE 6 Version PDF
Taille
27 ko
13618
3081 ko
9977 ko
1702 ko
Affichage
Téléchargement
Date
Livre Core Servlets and Java Server Pages
Livre:Java Server Pages JSP
Livre: HTML & CSS: The Complete Reference
Livre: JavaScript: The Good Parts
Un site intéressant pour apprendre les technologies
web. w3schools
Livre: Learning MySQL
The complete reference Java Server Faces
2.0
Mastering Enterprise JavaBeans
Volume Horaire (TP): 1h30 par semaine.
3 TP1 - Architecture 3-tiers
Type
Nom
Étape 1: Installation du OpenJDK8 ---->
Étape 2: Installation de Netbeans 8.0.2 ---->
(y compris des liens utiles pour maîtriser cet environnement de développement)
Étape 3: Installation de MySQL Server -->
Rappel: Administration d'une base de donnée avec MySQL
Énoncé du TP1- Exercice 1 ---->
Exercice 1: ServerRMI.zip (Alternative 1)
Exercice 1: ClientRMI.zip (Alternative 1)
Remarque: 1- Pour tester cet exemple, vous pouvez importer les deux projets comme suit: -->
2- N'oubliez pas de changer le nom de la base de données dans le code.
Taille
Affichage
Téléchargement
Date
4 TP2 - Architecture 3-tiers - Étude des Servlets
Type
Nom
Énoncé Exercice 2 : Application d'authentification
Exercice 2 : ServerDemoLogin.zip
Exercice 2 : ClientDemoLogin.zip
Énoncé Exercice 3 : Gestion de personnes (à faire
durant les vacances)
Complément de TPs 2: (à consulter les différents liens proposés dans ce document)
à consulter ce lien aussi:
http://fr.wikipedia.org/wiki/Liste_des_codes_HTTP
Taille
Affichage
Téléchargement
Date
Remarque : Vous trouvez sur le tableau 2 des pointeurs vers des livres clés.
Remarque 2: Pour ceux qui ont trouvé des problèmes avec le port 80 (voire 8080), ils peuvent utiliser la commande netstat -b, rediriger son résultat dans un fichier, chercher les processus qui occupent ce port et les désactiver.
Commande : (il faut lancer l’interpréteur de commandes Windows ‘cmd’ en tant qu’administrateur)
netstat –b > file.txt
Vous pouvez appeler http://localhost:8080 dans
dans vos navigateurs pour voir le processus occupant ce port.
Si c'est 'Oracle', procédez comme suit pour arrêter ce processus:
- Tapez la commande "tasklist" dans l'interpréteur de
commandes Windows 'cmd' et récupérez le 'PID' du
processus Oracle.exe.
- Tapez, ensuite, la commande: taskkill /F /pid xxxx
(Remplacez xxxx par le PID d'Oracle)
5 TPs 3 - Servlet - JSP - JavaBeans - EL - Les sessions - Les cookies - welcome-file
Modèle MVC - Modèle MVC (interaction Vue - JB)
Type
Nom
Démo TP3
Lisez bien tous les commentaires dans les codes sources (Commencez par la servlet Test.java et la JSP bonjour.jsp). TP3.zip -->
Remarque: J'ai utilisé le JDK8. (Sinon sur NetBeansbouton droit sur le projet, Clean and Build Puis Run)
Voici l'arborescence du projet ---------->
(N.B: Les Servlets sont dans un paquet et les beans dans un autre paquet )
Remarque: 1- Pour tester cet exemple, vous pouvez importer le projet comme suit: -------->
2- Pour lancer cet exemple, procédez comme suit: -->
Autres Remarques:
- Tous les fichiers dans le dossier WEB-INF ne sont pas accessibles depuis l'extérieur.
-web.xml
<welcome-file-list>
<welcome-file>MyHome</welcome-file>
<welcome-file>MyIndex</welcome-file>
<welcome-file>MyDefaultpage</welcome-file>
</welcome-file-list>
Le serveur cherche la page 'MyHome'. Si celle-ci n'existe pas, alors il passe au deuxième fichier 'MyIndex' et ainsi de suite jusqu'à ce qu'il trouve un fichier de bienvenue (d'accueil) valide.
Travail demandé pour la séance de TPs de la semaine de 06/04 : (Modèle MVC)
Choisissez l'une des deux alternatives:
- Gestion des étudiants interaction Vue - JB
- Gestion de personnes interaction Vue - JB
Templates pour améliorer vos sites web:
http://startbootstrap.com/template-categories/all/
Complément de TPs 3
Remarque: Pour faire tourner le projet mentionné sur le complément, il fait importer cette bibliothèque ------->
comme suit: ------->
ou bien: Sous NetBeans Bouton droit sur le projet - Properties - Librairies - Add JAR / Folder
Taille
Affichage
Téléchargement
Date
6 TPs 4 - JSTL (Java server pages Standard Tag Library)
JSF (Java Server Faces)
Type
Nom
Démo TP4JSTL
Lisez tous les commentaires dans les codes sources (surtout bonjour.jsp, web.xml et taglibs.jsp) TP4JSTL.zip -->
Voici l'arborescence du projet ---------->
Pour faire tourner ce projet il fait importer la bibliothèque jstl- 1.2 ------->
Sous NetBeans Bouton droit sur le projet - Properties - Librairies - Add JAR / Folder
Remarque: J'ai utilisé le JDK8. (Sinon sous NetBeans bouton droit sur le projet, Clean and Build Puis Run)
Références:
Wikipedia: http://tinyurl.com/nxgjb9x
Documentation
http://docs.oracle.com/javaee/5/jstl/1.1/docs/tlddocs/
Complément de TPs 4 JSTL ----->
Démo TP4JSF
Taille
Affichage
Téléchargement
Date
Lisez les commentaires dans les codes sources (la Facelet bonjour.xhtml, le ManagedBean BonjourBean.java la Facelet bienvenue.xhtml et le fichier web.xml) TP4JSF.zip -->
Voici l'arborescence du projet -------->
Pour créer ce projet: New Project - Java Web - Web Application ( N'oubliez pas de cocher 'JavaServer Faces')
Références:
http://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html
http://fr.wikipedia.org/wiki/JavaServer_Faces
https://netbeans.org/kb/docs/web/jsf20-intro.html
http://www.jsftoolbox.com/documentation/help/12-TagReference/index.jsf
Mojarra Java Server Faces: https://javaserverfaces.java.net/
Forums aux questions:
http://stackoverflow.com/tags/jsf/info
Facelets:
Documentation officielle Facelets:
http://docs.oracle.com/javaee/6/javaserverfaces/2.1/docs/vdldocs/facelets/
JSF HTML Tags & JSF Core Tags
Travail demandé pour la séance de TPs de la semaine de 13/04 :
JSTL: Utilisez la documentation de la JSTL et testez d'autres balises.
JSF: Utilisez la documentation des Facelets et testez d'autres balises.
Remarque: Les balises JSF ne sont que des appels à des composants JSF.
7 TPs 5 - Les règles de navigation
Les validateurs
Les convertisseurs
Type
Nom
Remarque (suite TPs4):
Vous pouvez utiliser la bibliothèque Primefaces qui offre des composants graphiques évolués pour les Facelets.
Documentation:
http://www.primefaces.org/docs/guide/primefaces_user_guide_5_2.pdf
Les règles de navigation:
Démo TP4JSF (Version modifiée)
- Arborescence du projet ------------------->
- Utilisation du fichier faces-config.xml (Sous NetBeans: bouton droit sur le projet - New - Other - JavaServer Faces - JSF Faces Configuration
- Visualisation (PageFlow) --------->
Taille
Affichage
Téléchargement
Date
-Exemple d'utilisation du <managed-bean> au lieu des annotations @ManagedBean
- TP4JSF-V2.zip ------>
Pour tester cet exemple, vous pouvez importer le projet à partir du Zip.
Autres alternatives de Navigation:
Démo TP5Navigation
- TP5Navigation.zip ------>
Pour tester cet exemple, vous pouvez importer le projet à partir du Zip.
Les validateurs
Démo TP5Validateurs
Validation Tags ------------------>
f:validateLength (Syntaxe + exemple) -->
f:validateLongRange (Syntaxe + exemple)->
f:validateDoubleRange (Syntaxe + exemple) ->
f:validateRegex (Syntaxe + exemple) ->(lien)
Le projet contenant tous les codes sources:
TP5validateurs.zip ------------------->
8 TPs 6 - JSF - Devinette - Template (Facelets templating)
Type
Taille
Affichage
Téléchargement
Date
Pour ceux qui n’ont pas terminé la partie « JSF Template tags: Facelets templating », ils doivent la terminer pour la prochaine séance de TPs.
9 TPs 7 - JSF - EJB - JPA
Type
Nom
Énoncé ------------------>
Documentation officielle Oracle (JEE6):
EJB:
http://docs.oracle.com/javaee/6/tutorial/doc/gipmb.html
JPA:
http://docs.oracle.com/javaee/6/tutorial/doc/bnbpz.html
Architecture ------------------------>
Taille
Affichage
Téléchargement
Date
10 TPs 8 - EJB (MDB) - JPA - JMS
Type
Nom
Taille
Affichage
Téléchargement
Date
Documentation officielle Oracle (JEE6):
EJB:
Singleton Session Bean
http://docs.oracle.com/javaee/6/tutorial/doc/gipjg.html
Message-Driven Bean MDB
http://docs.oracle.com/javaee/6/tutorial/doc/gipko.html
Java Message Service JMS
https://docs.oracle.com/javaee/6/tutorial/doc/bncdq.html
Architecture:
Partie 1: --------------------------------->
Partie 2: ----------------------------->
Liens utiles:
Rappel sur la programmation en JAVA:
Rappel sur le langage HTML: (Voici un lien de téléchargement de Dreamweaver8: lien)
Ressources pour habiliter les sites web:
Templates sites web gratuits : Ce site fournit des templates gratuits de site web. ( lien 2)
Couleurs: Color scheme designer 3 Color Schemer Palette
Divers : CSS, Ajax
CSS (cascading style sheets) Zen Garden Ce site fournit des modèles templates de feuilles de styles CSS.
w3schools: Un site intéressant pour apprendre les technologies web.
Forums aux questions:
-> Lisez ce guide avant de poser vos questions sur le forum stackoverflow (Respectez toutes les consignes)
Bibliographie:
JavaServer Pages™, 2nd Edition Hans Bergsten Publisher: O'Reilly August 2002
I just had to take the hypertext idea and connect it to the TCP and DNS ideas and — ta-da!— the World Wide Web.
http://en.wikiquote.org/wiki/Tim_Berners-Lee
A lot of success in life is that passion and persistence, of really staying the course, staying working on it, and, not letting go. Not giving up :)