Liste des composants JSF

Liste des composants JSF

  1. Objectifs

    • Connaitre les composants JSF
  2. Présentation

    • L’implémentation JSF fournit en standard une bibliothèque de balises destinées à la restitution des composants graphiques pour les clients HTML. Il s’agit de la bibliothèque HTML déjà traitée au cours HTML.

    • Une page JSF est un arbre de composants qui étend la classe javax.faces.component.UIComponent et possède ses propres propriétés, méthodes et son gestionnaire d’évènements. Les composants sont liés par l’arbre de composants sous la forme de relations parents-enfants.
    • Une page JSF utilise couramment un ensemble de déclarations d’espaces de noms (namespaces) pour l’utilisation des librairies de tags. Chaque page JavaServer Faces est décrite par le Page Declaration Language (PDL) (http://java.sun.com/javaee/javaserverfaces/2.0/docs/pdldocs/facelets/).



  3. Les composants HTML

    • La librairie HTML contient la liste des balises pour la gestion des formulaires client et la gestion des données utilisateur.
    • Les composants HTML se regroupent en neuf catégories :
      1. Les composants de saisie (inputText) ;
        • JSF propose trois éléments permettant de spécifier des zones de saisie de texte :
          1. h:inputText : ouvre une zone de saisie sur une ligne, en général assez courte ;
          2. h:inputSecret : ouvre une zone de saisie sur une ligne pour des mots de passe, le contenu de cette zone s’affiche sous forme de caractères génériques (étoiles ou points), la saisie est masquée ;
          3. h:inputTextArea : Ouvre une zone de saisie sur plusieurs lignes, pour des textes longs.
      2. Les composants de sortie ou d’affichage (output) ;
      3. Les commandes (commandButton) ;
        • Dans JSF 2.0, les deux balises et sont utilisées pour restituer l’élément d’entrée HTML de type button, avec un mécanisme différent pour gérer la navigation.
        • h:commandButton : Bouton de contrôle: submit, reset, ou button;
        • h:button : Le " h: button" est une nouvelle balise dans JSF 2.0. Vous pouvez déclarer le résultat de la navigation directement dans l’attribut "result". Il n’est pas nécessaire d’appeler un bean pour renvoyer un résultat tel que "h: commandButton" ci-dessus. Mais, si le navigateur avec JavaScript désactivé, la navigation échouera, car la balise "h: button" génèrera un événement "onclick"; pour gérer la navigation via "window.location.href".
        • Exemple:Création d’un bouton JSF
        • <h:commandButton value="envoyer" type="submit" action="#{marinService.submit}"/>
        • h:commandLink : un lien qui envoie un POST ;
        • Exemple:Création d’un lien JSF
        • <h:commandLink>
              #{message.login}
              <h:graphicImage librairy="icons" name="login.png"/>
          </h:commandLink>
      4. Les composants de sélection (checkbox, listbox, radio) ;
      5. Les composants HTML (head, body) ;
      6. Les composants de mise en page (panelGrid, panelGroup) ;
      7. Les composants d’affichage de messages d’erreur (message) ;
      8. Le composant dataTable.
        • Ce composant représente un tableau HTML dans lequel des données vont pouvoir être automatiquement présentées.
        • Ce composant est sûrement le plus riche en fonctionnalité et donc le plus complexe des composants fournis en standard.
  4. Les balises JSF

    1. Les balises JSF "ui" servent à la composition des pages et à la création des modèles de page (templates)
      http://javaserverfaces.java.net/nonav/docs/2.1/vdldocs/facelets/ui/tld-summary.html
    2. Les balises composant JSF "h" servent à afficher des composants graphiques HTML tels que boutons, liens, champs de saisies, formulaires, …
      http://javaserverfaces.java.net/nonav/docs/2.1/vdldocs/facelets/h/tld-summary.html
    3. Les balises des actions JSF "f" servent à gérer des actions tel que Ajax, ActionListener, la validation des champs saisis de manière indépendante du fournisseur de rendu
      http://javaserverfaces.java.net/nonav/docs/2.1/vdldocs/facelets/f/tld-summary.html
    4. Les balises Primefaces "p" servent à afficher des composants graphiques plus évolués que "h"
      http://primefaces.org/
  5. Les balises JSTL

    1. Les balises JSTL "core" ou "c" servent à insérer des contrôles de flux (if, forEach, otherwise, …)
      http://javaserverfaces.java.net/nonav/docs/2.1/vdldocs/facelets/c/tld-summary.html
    2. Les balises JSTL "Functions" ou "fn" servent à manipuler des chaînes de caractères (indexOf, contains, trim, …)
      http://javaserverfaces.java.net/nonav/docs/2.1/vdldocs/facelets/fn/tld-summary.html



Abonnez vous à notre chaîne YouTube gratuitement