Création d’un projet JSF
Création d’un projet JSF
-
Objectifs
- Etre capable d’installer avec le framework JSF
-
Présentation
- A partir d’Eclipse, créez un projet web dynamique, ayant pour cible de déploiement Tomcat installé précédemment.
- La première étape consiste à créer un nouveau projet Web. Nous l’appellerons GestionCentreJSF afin de ne pas rentrer en conflit avec le projet web développé dans les cours précédents(JSP).
- Il s’agit de faire un mini prototype de site de gestion d’un centre de formation et nous partons de l’idée que ce site n’est accessible qu’à des personnes autorisées.
-
Installation du projet
- Cliquez avec le bouton droit de la souris dans l’explorateur de projet ("Package Explorer"), sélectionner "New", puis cliquez sur "Dynamic Web Project".
- Saisissez le nom de projet : GestionCentreJSF dans la boite de dialogue qui vient de s’ouvrir
- Ensuite, il faut indiquer à Eclipse que votre projet va utiliser l’outillage JSF.
- Sous « Configuration », sélectionnez « JavaServer Faces v2.2 ».
- Une Facet Eclipse est un ensemble de plugins à activer dans votre projet. Bien entendu la Facet à activer se nomme « JavaServer Faces ».
- Fermez les boîtes de dialogues en confirmant les changements. Normalement, le projet est crée. Si vous ouvrez l’arborescence du projet, vous devriez y retrouver les éléments suivants:
-
Examiner le projet généré
-
Le fichier web.xml
- Le projet est en partie configuré, mais de vous propose quelques dernières modifications. Premièrement, nous allons modifier le descripteur de déploiement de votre application Web (le fichier WEB-INF/web.xml). Deux manières sont proposées pour consulter le contenu de ce descripteur de déploiement.
- soit vous utilisez l’assistant graphique proposé par Eclipse. Il est disponible dans l’explorateur de projet, en première entrée dans l’arborescence correspondante à votre projet (Deployment Descriptor: WebStoreJSF).
- soit vous ouvrez directement le fichier XML. L’éditeur de descripteur de déploiement propose, à son tour, deux vues différentes : la vue Design qui permet de travailler principalement via des menus contextuels ou la vue Source qui permet directement de voir le fichier au format XML.
- Voici le nouveau contenu du fichier WEB-INF/web.xml.
-
Le fichier de configuration JSF
- JSF fournit un fichier de configuration, qui doit lui aussi être placé dans le dossier WEB-INF
- Il doit se nommer WEB-INF/faces-config.xml.
- Comme nous avons activé la facet Eclipse pour JSF, un outil de visualisation/édition est proposé spécifiquement pour ce fichier. Cet outil propose plusieurs onglets (en bas de la fenêtre d’édition) afin de traiter chaque aspect de la configuration. Voici une capture d’écran de cet outil.
- Pour ce moment nous ne modifierons pas son contenu et il restera donc tel qu’il a été généré à la construction du projet
-
Création du bean
- Créer bean pour stocker le nom saisi par l’utilisateur.
- Si vous aurez le message suivant :The import javax.faces cannot be resolved
- Pour corriger cette erreur ajouter le fichier jsf-api-2.1.jar
- Télécharger le fichier javax.faces
- Cliquer avec le bouton droit sur le projet d’application Web
- Cliquer sur les propriétés en bas.
- Sous le chemin de génération java, assurez-vous que le panneau des bibliothèques en haut est sélectionné, puis sélectionnez la bibliothèque d’applications Web
- Cliquez avec le bouton droit sur Ajouter des fichiers JAR externes. Vous pouvez aller dans votre dossier de téléchargements et sélectionner le jsf-api-2.1.jar
- https://www.editions-eni.fr/open/mediabook.aspx?idR=d61db330adee76e87b74dc180f67552d
pour avoir accès à ce type de projet, vous devez lire le tutoriel suivant:Ajouter un dynamic web project à eclipse.
Pour ajouter les paramètres JSF à un projet Web dynamique existant, cliquez avec le bouton droit sur votre projet, sélectionnez Propriétés du projet Facettes de projet et ajoutez ensuite la facette JSF à votre projet.
import java.io.Serializable; import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; @ManagedBean @RequestScoped public class bean implements Serializable { private static final long serialVersionUID = 1L; private String nom; public String getNom() { return nom; } public void setNom( String nom ) { this.nom = nom; } }
Ajouter le fichier jar à notre projet
Bibliographie