Atelier EDI Eclipse Ganymede N°2 : JSF

Transcription

Atelier EDI Eclipse Ganymede N°2 : JSF
Nadiri Abdeljalil
Contact : [email protected]
21/01/2009
Eclipse Ganymede J EE WebSphere
Atelier EDI Eclipse Ganymede N°2 : JSF
Etape 1 : configuration
• Définir « Web Page Editor » comme éditeur par défaut des pages *.jsp
o Dans la fenêtre « Fenêtres/Préférences/Général/Editeurs/Associations
de fichiers »
o Dans la liste « Types de fichier » sélectionnez *.jsp
o Dans la liste « Editeurs associés » sélectionnez « web page editor » et
cliquez sur le bouton « Valeur par défaut »
o Cliquez sur OK
Etape 2 : Création du projet
• Fichier : Nouveau / projet web dynamique
– Project Name: jsf1
– Target Runtime: IBM WASCE v2.1
– version Module Web Dynamic: 2.5
– Configuration: JavaServer Faces v1.2 , cliquez sur “ Modify” et dans la fenêtre Project
Facets Cocher « WASCE Deployment »
• Select JavaServer Faces (preselected at Version 1.2).
• Select WASCE Deployment.
Page 1/12
Nadiri Abdeljalil
Contact : [email protected]
•
21/01/2009
Eclipse Ganymede J EE WebSphere
Cliquez sur OK
Page 2/12
Nadiri Abdeljalil
Contact : [email protected]
•
•
•
•
Elément
•
•
•
21/01/2009
Eclipse Ganymede J EE WebSphere
Cliquez sur suivant, dans la fenêtre « Module Web » cocher la case « Générer le
descripteur de déploiement.
Cochez la case « générer le descripteur de déploiement ». et cliquez sur suivant
deux fois
Dans la la fenêtre « JSF capabilities », sélectionnez l’option « Server side JSF
implementation ».
Cliquez sur « Terminer »
JSF générés par l’assistant :
Un fichier de configuration WEB-INF/faces-config.xml.
Une FacesServlet prédéfinie dans le fichier web.xml.
Mapping des url /faces/* dans le fichier web.xml
Page 3/12
Nadiri Abdeljalil
Contact : [email protected]
21/01/2009
Eclipse Ganymede J EE WebSphere
Etape 3 : Création des pages JSP JSF
Créer la page login.jsp
• Créer une nouvelle page jsp nommée « login.jsp », dans la fenêtre « Sélectionner Modèle
JSP ». sélectionnez le modèle « New JavaServer Faces (JSF) Page (html) »
• Cliquez sur « Terminer »
Notez la présence des deux directives suivantes dans la page générée.
• <%@ taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
• <%@ taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
Créer la page JSP JSF bienvenue.jsp
Etape
•
•
•
4 : définir la navigation
Ouvrez le fichier faces-config.xml et sélectionnez l’onglet « Navigation rule ».
Sélectionnez l’outil « page » à partir de la palette et cliquez à l’intérieur de la page
Dans la fenêtre « select JSP file » sélectionnez la page « login.jsp »
Page 4/12
Nadiri Abdeljalil
Contact : [email protected]
•
•
•
21/01/2009
Eclipse Ganymede J EE WebSphere
Cliquez sur « OK »
Ajoutez de la même manière la page « bienvenue.jsp »
Créez le lien de navigation entre les deux pages
o Cliquez sur l’outil « link »
o Dessiner un lien de la page login vers la page bienvenue
o Cliquez sur l’outil Select dans la palette.
o Sélectionnez le lien créé
o Dans le panneau « propriétés » définissez la propriété suivante :
ƒ From outcome : login
Page 5/12
Nadiri Abdeljalil
Contact : [email protected]
21/01/2009
Eclipse Ganymede J EE WebSphere
ƒ
Lignes générées par l’assistant dans le fichier faces-config.xml :
<navigation-rule>
<display-name>login</display-name>
<from-view-id>/login.jsp</from-view-id>
<navigation-case>
<from-outcome>login</from-outcome>
<to-view-id>/bienvenue.jsp</to-view-id>
</navigation-case>
</navigation-rule>
Etape 5 : Création du bean managé : LoginBean
•
•
•
•
Ouvrez le descripteur faces-config.xml, sélectionnez l’onglet « Managed bean »
Cliquez sur « Add »
Sélectionnez « create a new java class »
Définir le nom du package et le nom de la classe.
Page 6/12
Nadiri Abdeljalil
Contact : [email protected]
•
21/01/2009
Eclipse Ganymede J EE WebSphere
Cliquez sur suivant deux foix, puis cliquez sur «Terminer » .
Les lignes suivantes ont été ajoutées par l’assistant dans le fichier faces-config.xml :
<managed-bean>
<managed-bean-name>loginBean</managed-bean-name>
<managed-bean-class>ateliers.web.jsf.LoginBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
•
Compléter la classe « LoginBean ».
o Ajouter les propriétés privées suivantes et les méthodes set et get correspondantes :
ƒ nom
ƒ password
Etape 6 : Compléter la page login.jsp
•
•
•
Ouvrez la page login.jsp
Ajouter un bouton de commande à bouton de commande à partir de la section « JSF HTML ».
Définir les propriétés :
o Value : Login
Page 7/12
Nadiri Abdeljalil
Contact : [email protected]
o
21/01/2009
Eclipse Ganymede J EE WebSphere
action: login
Code généré par l’assistant :
<f:view>
<h:form>
<h:commandButton value="Login" action="login"></h:commandButton>
</h:form>
</f:view>
•
•
Ajouter un composant PanelGrid
Définir la propriété value des composants OutputText (Item1 et Item3) comme suit :
o Item1 : value=Nom :
o Item3 : value=Password :
Page 8/12
Nadiri Abdeljalil
Contact : [email protected]
•
•
21/01/2009
Eclipse Ganymede J EE WebSphere
Remplacer le composant outputText item2 par un composant InputText
o Propriétés
ƒ value: #{loginBean.nom}.
Remplacer le composant outputText item4 par un composant InputSecret
o Propriétés :
ƒ value : #{loginBean.password}
Etape 6 : créer un composant de validation
Page 9/12
Nadiri Abdeljalil
Contact : [email protected]
•
21/01/2009
Eclipse Ganymede J EE WebSphere
Ajouter une classe (nommée atelies.web.jsf.ValidationMdp) qui implémente l’interface
Validator
• Cliquez sur « Terminer » , la classe suivante est générée
package ateliers.web.jsf;
import
import
import
import
javax.faces.component.UIComponent;
javax.faces.context.FacesContext;
javax.faces.validator.Validator;
javax.faces.validator.ValidatorException;
public class ValidationMdp implements Validator {
public void validate(FacesContext arg0, UIComponent arg1, Object arg2)
throws ValidatorException {
// TODO Auto-generated method stub
}
}
•
•
•
Enregistrez
Ouvrez le fichier faces-config.xml et sélectionnez l’onglet « Component »
Dans la section « Validators » cliquez sur le bouton « Add »
Page 10/12
Nadiri Abdeljalil
Contact : [email protected]
•
•
•
•
21/01/2009
Eclipse Ganymede J EE WebSphere
Sélectionnez la classe ValidationMdp
Définir la propriété « Display Name » : Valider Mot de passe
Définir la propriété « Validator ID » : ateliers.web.jsf.validationMdp
• Ajouter le composant JSF <f:validator> dans la page « login.jsp »
<h:inputSecret value="#{loginBean.password}">
<f:validator validatorId="ateliers.web.jsf.ValidationMdp" />
</h:inputSecret>
Etape 7 : Création d’un fichier de ressources
• Ajouter un fichier dans le dossier ateliers.web. jsf nommé messages.properties
Page 11/12
Nadiri Abdeljalil
Contact : [email protected]
•
21/01/2009
Eclipse Ganymede J EE WebSphere
Ajouter le contenu suivant dans le fichier
nom=nom
mdp=mot de passe
login=login
bienvenue=Bienvenue
• Dans la page login.jsp ajouter un composant JSF loadBundle
<f:loadBundle basename="ateliers.web.jsf.messages" var="msg"/>
</head>
•
Remplacer la propiété value des composants OutputText de la manière suivante :
<h:outputText value="#{msg.login}"></h:outputText>
<h:inputText value="#{loginBean.nom}"></h:inputText>
<h:outputText value="#{msg.mdp}"></h:outputText>
<h:inputSecret value="#{loginBean.password}">
<f:validator validatorId="ateliers.web.jsf.ValidationMdp"
/>
</h:inputSecret>
Etape8 : Compléter la page bienvenue.jsp.
•
•
Ajouter un composant loadBundle
Ajouter un composant outputLabel
Page 12/12

Documents pareils