Introduction par l'exemple à
Java Server Faces, PrimeFaces et PrimeFaces Mobile
serge.tahe at istia.univ-angers.fr, juin 2012
http://tahe.developpez.com 1/424
1 Introduction
1.1 Présentation
Nous nous proposons ici d'introduire, à l'aide d'exemples
le framework Java Server Faces 2 (JSF2),
la bibliothèque de composants PrimeFaces pour JSF2, pour les applications de bureau et les mobiles.
Ce document est principalement destiné aux étudiants et développeurs intéressés par la bibliothèque de composants PrimeFaces
[http://www.primefaces.org]. Ce framework propose plusieurs dizaines de composants ajaxifiés
[http://www.primefaces.org/showcase/ui/home.jsf] permettant de construire des applications web ayant un aspect et un
comportement analogues à ceux des applications de bureau. Primefaces s'appuie sur JSF2 d'où la nécessité de présenter d'abord ce
framework. Primefaces propose de plus des composants spécifiques pour les mobiles. Nous les présenterons également.
Pour illustrer notre propos nous construirons une application de prise de rendez-vous dans différents environnements :
1. une application web classique avec les technologies JSF2 / EJB3 / JPA sur un serveur Glassfish 3.1,
2. la même application ajaxifiée, avec la technologie PrimeFaces,
3. et pour finir, une version mobile avec la technologie PrimeFaces Mobile.
A chaque fois qu'une version aura été construite, nous la porterons dans un environnement JSF2 / Spring / JPA sur un serveur
Tomcat 7. Nous construirons donc six applications Java EE.
Le document ne présente que ce qui est nécessaire pour construire ces applications. Aussi ne doit-on pas y chercher
l'exhaustivité. On ne la trouvera pas. Ce n'est pas non plus un recueil de bonnes pratiques. Des développeurs aguerris pourront ainsi
trouver qu'ils auraient fait les choses différemment. J'espère simplement que ce document n'est pas non plus un recueil de
mauvaises pratiques.
Pour approfondir JSF2 et PrimeFaces on pourra utiliser les références suivantes :
[ref1] : Java EE5 Tutorial [http://java.sun.com/javaee/5/docs/tutorial/doc/index.HTML], la référence Sun pour
découvrir Java EE5. On lira la partie II [Web Tier] pour découvrir la technologie web et notamment JSF. Les exemples du
tutoriel peuvent être téléchargés. Ils viennent sous forme de projets Netbeans qu'on peut charger et exécuter,
[ref2] : Core JavaServer Faces de David Geary et Cay S. Horstmann, troisième édition, aux éditions Mc Graw-Hill,
[ref3] : la documentation de PrimeFaces [http://primefaces.googlecode.com/files/primefaces_users_guide_3_2.pdf],
[ref4] : la documentation de PrimeFaces Mobile :
[http://primefaces.googlecode.com/files/primefaces_mobile_users_guide_0_9_2.pdf].
Nous ferons parfois référence à [ref2] pour indiquer au lecteur qu'il peut approfondir un domaine avec ce livre.
Le document a été écrit de telle façon qu'il puisse être compris par le plus grand nombre. Les pré-requis nécessaires à sa
compréhension sont les suivants :
connaissance du langage Java,
connaissances de base du développement Java EE.
On trouvera sur le site [http://developpez.com] toutes les ressources nécessaires à ces pré-requis. On en trouvera certaines sur le
site [http://tahe.developpez.com] :
[ref5] : Introduction à la programmation web en Java (septembre 2002) [http://tahe.developpez.com/java/web/] :
donne les bases de la programmation web en Java : servlets et pages JSP,
[ref6] : Les bases du développement web MVC en Java (mai 2006) [http://tahe.developpez.com/java/baseswebmvc] :
préconise le veloppement d'applications web avec des architectures à trois couches, la couche web implémente le
modèle de conception (Design Pattern) MVC (Modèle, Vue, Contrôleur).
[ref7] : Introduction à Java EE 5 (juin 2010) [http://tahe.developpez.com/java/javaee]. Ce document permet de
découvrir JSF 1 et les EJB3.
[ref8] : Persistance Java par la pratique (juin 2007) [http://tahe.developpez.com/java/jpa]. Ce document permet de
découvrir la persistance des données avec JPA (Java Persistence API).
http://tahe.developpez.com 2/424
[ref9] : Construire un service web Java EE avec Netbeans et le serveur Glassfish (janvier 2009)
[http://tahe.developpez.com/java/webservice-jee]. Ce document étudie la construction d'un service web. L'application
exemple qui est étudiée dans le présent document provient de [ref9].
1.2 Les exemples
Les exemples du présent document sont disponibles à l'URL [http://tahe.ftp-developpez.com/fichiers-archive/jsf2-pf-pfm.zip]
sous la forme de projets Maven à la fois pour Netbeans et Eclipse :
Pour importer un projet sous Netbeans :
en [1], on ouvre un projet,
en [2], on désigne le projet à ouvrir dans le système de fichiers,
en [3], il est ouvert.
Avec Eclipse,
http://tahe.developpez.com 3/424
1
23
en [1], on importe un projet,
en [2], le projet est un projet Maven existant,
en [3] : on le désigne dans le système de fichiers,
en [4] : Eclipse le reconnaît comme un projet Maven,
en [5], le projet importé.
1.3 Les outils utilisés
Dans la suite, nous utilisons (mai 2012) :
l'IDE (Integrated Development Environment) Netbeans 7.1.2 disponible à l'URL [http://www.netbeans.org],
l'IDE Eclipse Indigo [http://www.eclipse.org/] sous sa forme customisée SpringSource Tool Suite (STS)
[http://www.springsource.com/developer/sts],
PrimeFaces dans sa version 3.2 disponible à l'URL [http://primefaces.org/],
PrimeFaces Mobile dans sa version 0.9.2 disponible à l'URL [http://primefaces.org/],
WampServer pour le SGBD MySQL [http://www.wampserver.com/].
1.3.1 Installation de l'IDE Netbeans
Nous décrivons ici l'installation de Netbeans 7.1.2 disponible à l'URL [http://netbeans.org/downloads/].
http://tahe.developpez.com 4/424
1
2
1
3
4
5
On pourra prendre ci-dessus, la version Java EE avec les deux serveurs Glassfish 3.1.2 et Apache Tomcat 7.0.22. Le premier permet
de développer des applications Java EE avec des EJB3 (Enterprise Java Bean) et l'autre des applications Java EE sans EJB. Nous
remplacerons alors les EJB par le framework Spring [http://www.springsource.com/].
Une fois l'installateur de Netbeans téléchargé, on l'exécutera. Il faut pour cela avoir un JDK (Java Development Kit)
[http://www.oracle.com/technetwork/java/javase/overview/index.HTML]. Outre Netbeans 7.1.2, on installera :
le framework JUnit pour les tests unitaires,
le serveur Glassfish 3.1.2,
le serveur Tomcat 7.0.22.
Une fois l'installation terminée, on lance Netbeans :
en [1], Netbeans 7.1.2 avec trois onglets :
l'onglet [Projects] visualise les projets Netbeans ouverts ;
l'onglet [Files] visualise les différents fichiers qui composent les projets Netbeans ouverts ;
l'onglet [Services] regroupe un certain nombre d'outils utilisés par les projets Netbeans,
en [2], on active l'onglet [Services] et en [3] la branche [Servers],
en [4], on lance le serveur Tomcat pour vérifier sa bonne installation,
http://tahe.developpez.com 5/424
1
2
3
4
1 / 424 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !