Struts                                  JSF 2.0                   JSP           Servlets     HTTPrequest/response
Pla   n       2
Java Server Faces est un framework Javapour le développement d’application web     Orienté composants     Basé sur le patt...
FacesServlet   JSF Pages                           4
JEE 6 &      Correction       Correction                                         Multiples        de bugs         de bugs ...
<h:form><h:commandButton actionListener="#{Personne.action} "  action="#{Personne.MonImc} "  value=« IMC"/></h:form>      ...
Pla   n       7
<navigation-rule>@ManagedBean#{bean.property} Request Scope  @Max(1000)  View Scope                    8
JSFJSF2.0 2.0       9
JSFJSF2.0 2.0       10
Faisons un petit    Faisons un petit       exemple !!!!        exemple@                   11
Technologie de présentation pour le       développement d’application web.Spécifiquement Spécifiquement                   ...
Voyons ce qu’on        Voyons ce qu’on        peut faire avec         peut faire avec         les facelets !!!!          l...
JSF 2.0   Sauvegarde d’état partielle (juste l’état sauvée/restaurée          La totalité de l’arbre de composants est mod...
Ajax est essentiel pour construire des              applications Web convaincantes et compétitives.             Plusieurs ...
Se déclenchent lors de la phase ProcessValidation         Le but dun converter est d’affiner le modèle         Le but dun ...
Je veux un peu de              Je veux un peu de               dynamisme dans               dynamisme dans                ...
JSFJSF2.0 2.0       18
Appliquons sur   Appliquons sur  notre exemple   notre exemple« la navigation« la navigationconditionnelle » !!!! conditio...
Pla   n       20
<bean id=“SpringBean“ class="com.spring.beans.Personne"><property name = " nom" value= " Sahbi " ></property>          Spr...
Les composants   personnalisésAccès aux beans par    leurs nomsLangage d’expressionSimplicité du fichier  de configuration
Serveurs dapplication• Glassfish, Jboss, Tomcat, JettyIDE• NetBeans 6.9 et EclipseGénération de code :•Archetypes MavenLib...
Merci pour votre attentionMerci pour votre attention                             24
A vos QuestionsA vos Questions                  25
Prochain SlideShare
Chargement dans…5
×

JSF 2.0

1 892 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 892
Sur SlideShare
0
Issues des intégrations
0
Intégrations
145
Actions
Partages
0
Téléchargements
128
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • offrant d&apos;une part, une architecture MVC et d&apos;autre part, une approche composant (l&apos;état d&apos;un composant est enregistré lors du rendu de la page, pour être ensuite restauré au retour de la requête.). L&apos;objectif est de remplacer l&apos;approche «  je traite la requête HTTP et je renvoie une page HTML  » par «  j&apos;envoie des composants (boutons, champs de texte, etc..) et je réagis aux actions de l&apos;utilisateur  ».
  • Les pages JSF sont par default des Facelets ( Apache). On peut encore JSP ou des pages XUL. (XML-based User interface Language (prononcé zoul) est un langage de description d’interfaces graphiques fondé sur XML) XUL facilite la mise au point d’une interface plus évoluée que HTML sur le plan technique. Une interface XUL peut récupérer d’un serveur les seules données nécessaires à la mise à jour d’un élément de la page et non l’ensemble de la page elle-même ; ces données peuvent être récupérées en XML et de manière asynchrone, ce qui permet d’utiliser la méthode AJAX en programmation XUL. Ces techniques permettent d’améliorer considérablement les temps de réponse et le confort de l’utilisateur. FacesServlet est la  servlet qui gère tout cycle de traitement d&apos;une requête
  • La première version des spécifications JSF est lancée par SUN le 11 Mars 2004 et définie dans la JSR 127. Après quelques corrections , la version 1.1 est sortie le 27 Mai 2004. La version 1.2 (Apache) sortie le 11 mai 2006 comprend un ensemble d&apos;améliorations mineures à la spécification précédente.  L&apos;utilisation d&apos;un schéma pour le fichier de configuration, à la place d&apos;une DTD.  Des améliorations pour pouvoir gérer plusieurs frames ou fenêtres d&apos;une même application.  Quelques corrections pour des bugs. JSF 2.0 est sortie en 28 juin 2009 en accompagnant la sortie Java EE 6 et en apportant les premières améliorations majeures en terme de productivité.
  • Un ensemble de phase exécutée l’une après l’autre  design pattern Chain of responsibilities Quand une requête est envoyé au serveur , il crée l’arbre hiérarchique des composants de l’IU et chaque composant est associé à son validateur , à son gestionnaire d’évènement et eventuellement à un objet (model). Après le moteur JSF extrait les paramètres de la requête et les applique à leurs composants respectifs. On sauvegrade les valeurs des paramètres et on fait les conversions nécessiares. Ensuite on applique les validateurs et si tout va bien les valeurs des beans sont mises à jour. Après la synchronisation des models, on entre dans la phase Invoke application. La le moteur JSF gére les evenements , la navigation , la mise à jour de la base de données etc Ainsi l’arbre de composants de la prochaine page est construit et on entame la dernière phase qui est le rendu de la réponse
  • Max(1000) Définit jsr 303 View Scope donne au managed bean associé une durée de vie identique à celle de la vue
  •  
  •  
  • Plusieurs solutions JSF / Ajax sont disponibles (IceFaces,PrimeFaces) . Les différences subtiles entre ces solutions conduisent des problèmes de compatibilité cross-framework. Les créateurs de JSF WebApp n&apos;ont pas accès aux fonctionnalités Ajax sans avoir besoin d&apos;un tiers framework  Api Ajax standard
  • 1/facile de combiner des interfaces graphiques complexes en un seul composant gérable en JSF , Struts ne le fait pas 2/JSF ne se limite pas aux formats HTML et HTTP; Struts si 3/JSF vous permet d&apos;attribuer des noms aux beans, puis vous référez à eux par leurs noms dans les formes. Struts a un processus complexe comportant plusieurs niveaux d&apos;indirection où vous devez vous rappeler quelle forme est l&apos;entrée pour quelle action. 4/Le langage d&apos;expression JSF est plus concis et plus puissant que de Struts. 5/Le fichier faces-config.xml est beaucoup plus facile à utiliser que le fichier struts-config.xml. En général, JSF est plus simple.
  • JSF 2.0

    1. 1. Struts JSF 2.0 JSP Servlets HTTPrequest/response
    2. 2. Pla n 2
    3. 3. Java Server Faces est un framework Javapour le développement d’application web Orienté composants Basé sur le pattern MVC Quoi ?? Quand ?? Comment ?? 3
    4. 4. FacesServlet JSF Pages 4
    5. 5. JEE 6 & Correction Correction Multiples de bugs de bugs nouveautés 1.1 1.1 Améliorations AméliorationsVersion Version et Corrections et Corrections JSF 2.0initiale initiale 1.2 1.2 1.0 1.0 JSR 314JSR 127 JSR 252 Quoi ?? Quand ?? Comment ?? 5
    6. 6. <h:form><h:commandButton actionListener="#{Personne.action} "  action="#{Personne.MonImc} "  value=« IMC"/></h:form> <h:inputText value="#{personne.no Quoi ?? Quand ?? Comment ?? 6
    7. 7. Pla n 7
    8. 8. <navigation-rule>@ManagedBean#{bean.property} Request Scope @Max(1000) View Scope 8
    9. 9. JSFJSF2.0 2.0 9
    10. 10. JSFJSF2.0 2.0 10
    11. 11. Faisons un petit Faisons un petit exemple !!!! exemple@ 11
    12. 12. Technologie de présentation pour le développement d’application web.Spécifiquement Spécifiquement Plus Plus Création des Création desdéveloppée pourdéveloppée pour performante et performante et Templating Templating composants composants JSF JSF plus légere que plus légere que personnalisés personnalisés JSP JSP P Facelets JS 12
    13. 13. Voyons ce qu’on Voyons ce qu’on peut faire avec peut faire avec les facelets !!!! les facelets tm.xh 13
    14. 14. JSF 2.0 Sauvegarde d’état partielle (juste l’état sauvée/restaurée La totalité de l’arbre de composants est modifié) web.xml 14
    15. 15. Ajax est essentiel pour construire des applications Web convaincantes et compétitives. Plusieurs solution s JSF/Ajax disponibles Pas de prise en charge native Un usage déclaratif ,plus commode pour les auteurs de pages avec le tagde la bibliothèque « core » de JSF 2.0 <f:ajax> 15
    16. 16. Se déclenchent lors de la phase ProcessValidation Le but dun converter est d’affiner le modèle Le but dun validator est de protéger le modèle 16
    17. 17. Je veux un peu de Je veux un peu de dynamisme dans dynamisme dans mes pages !!!! mes pages j ax><f:a 17
    18. 18. JSFJSF2.0 2.0 18
    19. 19. Appliquons sur Appliquons sur notre exemple notre exemple« la navigation« la navigationconditionnelle » !!!! conditionnelle » 19
    20. 20. Pla n 20
    21. 21. <bean id=“SpringBean“ class="com.spring.beans.Personne"><property name = " nom" value= " Sahbi " ></property> Spring</bean> web.xml<managed-bean> <managed-bean-name>personne</managed-bean-name> JSF <managed-bean-class> com.spring.beans.Personne </managed-bean-class> <managed-bean-scope>request</managed-bean-scope></managed-bean> IoC && Application Web Dynamique IoC && Application Web Dynamique
    22. 22. Les composants personnalisésAccès aux beans par leurs nomsLangage d’expressionSimplicité du fichier de configuration
    23. 23. Serveurs dapplication• Glassfish, Jboss, Tomcat, JettyIDE• NetBeans 6.9 et EclipseGénération de code :•Archetypes MavenLibrairies de composants• Richfaces 4.0 M2, IceFaces 2.0 béta 1, PrimeFaces 2.0... 23
    24. 24. Merci pour votre attentionMerci pour votre attention 24
    25. 25. A vos QuestionsA vos Questions 25

    ×