Création d'un projet de type Entreprise Application








télécharger 247.17 Kb.
titreCréation d'un projet de type Entreprise Application
page3/6
date de publication02.04.2017
taille247.17 Kb.
typeDocumentos
ar.21-bal.com > loi > Documentos
1   2   3   4   5   6
/>  

par :

view plainprint?

  1.  value="#{item.discountCode.discountCode} : #{item.discountCode.rate}%" />  

Ce qui aura pour effet de remplacer la première expression par le résultat de l'appel de la méthode getDiscountCode() de la classe DiscountCode.java, et la seconde par la valeur renvoyée par getRate() de cette même classe. L'affichage sera bien meilleur :



Etudiez maintenant le code de la page JSF, du managed bean, du session bean de l'entity bean, et essayez de retrouver les morceaux que vous avez développés dans le schéma présenté dans la toute première illustration de cette page. Regardez également comment s'articulent les différentes parties et dans quel ordre elles sont exécutées.

Remplacement de la DataTable par une provenant de la librairie de composants JSF PrimeFaces

Ajout de la librairie PrimeFaces dans le projet

PrimeFaces propose des composants évolués/complémentaires pour JSF2, le site web de référence est : http://www.primefaces.org

Cette librairie est déjà présente dans netbeans 7.2, dans sa dernière version 3.2.

Il suffit de l'ajouter au projet pour pouvoir l'utiliser : faites sur le projet web (celui précédé d'une icône en forme de globe terrestre) clic droit/properties, puis allez dans "Librairies", cliquez sur "Add library", selectionnez Primefaces 3.2.  

Modification de la page JSF

Pour pouvoir utiliser des tags provenant de PrimeFaces dans une page JSF il faut ajouter le namespace suivant : (cfhttp://primefaces.org/gettingStarted.html)

view plainprint?

  1. xmlnsxmlns:p=xmlns:p="http://primefaces.org/ui"  

A partir de là on pourra utiliser des tags PrimeFaces avec le préfixe p:

  • Remplacez simplement tous les tags et par
    et


  • Idem pour les tags et , remplacez les h: par p:

Déployez le projet (clic droit sur le projet avec le triangle/deploy) puis exécutez à nouveau la page qui affiche la liste des clients. Il est nécessaire de déployer car il faut que la librairie que nous venons d'ajouter au projet soit déployée dans le serveur. Il suffit de le faire une fois pour le projet, ensuite le déploiement incrémental (avec save ou ctrl-s) suffira. Vous devriez obtenir le résultat suivant :



C'est déjà mieux présenté non ? Bon, ce qui est intéressant, c'est que le composant dataTable de PrimeFaces possède de nombreuses options pour la pagination, rendre les colonnes triables, éditables, etc. Allez donc voir les démos/sources sur : http://www.primefaces.org/showcase-labs/ui/home.jsf

  1. Par exemple, ajoutez dans le tag
    les attributs paginator="true" et rows="10", sauvez, rechargez la page, ça y est, les résultats sont paginés (en mémoire, nous verrons plus tard comment faire des requêtes paginées sur la BD),

  2. Ensuite, faites en sorte que les colonnes soient triables: attribut sortBy="#{item.propriétéDeLaColonne}" dans chaque tag p:column

  3. Enfin, pour installer quelques filtres et champs de recherche sur la table (Attention, un bug dans la démo, il faut l'attribut widgetVar="customerTable" où customerTable sera l'identifiant de la table du côté client (en javascript, c'est customerTable.filter() qu'on doit mettre dans l'attribut onkeyup du tag p:inputText pour le champs de recherche global.

  4. 1 point pour celui qui a vu le bug de PrimeFaces qui fait que les colonnes sont triables seulement pendant qu'on effectue un filtrage...

Affichage des détails d'un client lorsqu'on clique sur une ligne

Maintenant nous allons voir comment afficher dans une autre page les détails d'un client lorsqu'on clique sur une ligne.

Ajout d'un lien dans le tableau pour déclencher l'affichage des détails d'un client

 Modifiez la page CustomerList.xhtml de manière à ce que lorsqu'on clique sur la colonne Id on affiche le détail d'un client, comme à la ligne 18 du listing ci-dessous.

view plainprint?


  1.  value="#{customerMBean.customers}" var="item"   

  2.              emptyMessage="No customer found with given criteria"   

  3.              widgetVar="customerTable"  

  4.              paginator="true"  

  5.              rows="10">  

  6.   

  7.   name="header">    

  8.     
        

  9.         
1   2   3   4   5   6

similaire:

Création d\Instruction ministérielle dgas/2C/dhos/dss/2010/06 du 7 janvier 2010...
«capacité à faire» du porteur de projet de création de pasa qui est visée. Les projets retenus devront être réalisables dès 2011

Création d\Création d’entreprise, auto-entrepreneuriat, reprise

Création d\Création d’entreprise, auto-entrepreneuriat, reprise

Création d\Création d’entreprise, auto-entrepreneuriat, reprise

Création d\Création d’entreprise, auto-entrepreneuriat, reprise

Création d\Résumé L'application des Nouvelles Technologies de l'Information...

Création d\Création de l’activité «BlobsActivity»
«Global». Ce token est stocké sous la forme d’un objet de type «wazserviceAccount»

Création d\Preface™ Système d’aide à la décision pédagogique et opérationnel...

Création d\Projet appli-cr application d'enregistrement et de suivi des comptes-rendus de visite

Création d\I- présentation de l’entreprise et du projet








Tous droits réservés. Copyright © 2016
contacts
ar.21-bal.com