IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JSF Java Discussion :

Avoir un tri par defaut dans une h:datatable


Sujet :

JSF Java

  1. #1
    Membre habitué
    Inscrit en
    Mars 2009
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 154
    Points : 149
    Points
    149
    Par défaut Avoir un tri par defaut dans une h:datatable
    Bonjour,

    J'utilise un composant <h:datatable> avec des colonnes triables mais je ne sais pas comment faire pour que mon premier affichage tri ma table en fonction d'un critère particulier.

    Est-ce que quelqu'un pourrait m'aider ?
    Renaud

  2. #2
    Membre habitué
    Inscrit en
    Mars 2009
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 154
    Points : 149
    Points
    149
    Par défaut
    Apparemment, ça se fait avec tomahawk mais j'aurais préféré trouver une solution avec JSF ou RichFaces...

  3. #3
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Avec Richfaces, tu as le composant extended Datatable qui le permet par défaut.

  4. #4
    Membre habitué
    Inscrit en
    Mars 2009
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 154
    Points : 149
    Points
    149
    Par défaut
    Bon ce n'est pas compatible avec un rich:datatable alors je ne peux pas l'utiliser de toute façon :s.

  5. #5
    Membre habitué
    Inscrit en
    Mars 2009
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 154
    Points : 149
    Points
    149
    Par défaut
    Extended Datatable ? Je vais voir ça tout de suite !!!

  6. #6
    Membre habitué
    Inscrit en
    Mars 2009
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 154
    Points : 149
    Points
    149
    Par défaut
    Citation Envoyé par romaintaz Voir le message
    Avec Richfaces, tu as le composant extended Datatable qui le permet par défaut.
    Bon j'ai regardé mais c'est assez confu. Quand tu dis qu'il le permet par défaut, tu veux dire que c'est dans ses options de base ?
    Peux-tu me donner un exemple de configuration ? Pourrais-tu me dire s'il est possible de donner a l'exetendedDataTable une apparence de dataTable ? (seul le tri par défaut m'interresse en fait...)

  7. #7
    Membre habitué
    Inscrit en
    Mars 2009
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 154
    Points : 149
    Points
    149
    Par défaut
    Personne ne saurait me l'expliquer ?

  8. #8
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Alors l'extendedDatatable permet de base de faire du tri si tu le précises dans les colonnes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <rich:column sortable="true" sortBy="#{...}">
        ...
    </rich:column>
    Pour l'aspect, je ne sais pas trop. Sans doute en jouant avec le CSS (voir la doc complète du composant ici).

    Je n'ai jamais utilisé ce composant. Sur un ancien projet, j'avais créé ma propre table qui étendait la rich:datatable afin de pouvoir :

    • utilise mon propre aspect (bon, c'était essentiellement du CSS donc pas la peine de créer un composant rien que pour ça).
    • permettre le tri des colonnes.
    • permettre la sélection unique ou multiple de lignes.
    • inclure automatiquement un équivalent du datascroller (permettre de naviguer entre les pages du tableau) dès que l'on en a besoin.

    Mais je tiens à dire que j'en ai galéré pour le faire je déconseille donc, à moins de vraiment maitriser JSF et la création de composants...

    Donc personnellement, j'essaierais de bidouiller le CSS afin d'utiliser l'extendedDatatable...

  9. #9
    Membre émérite
    Avatar de haskouse
    Homme Profil pro
    Salesforce
    Inscrit en
    Août 2009
    Messages
    923
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Maroc

    Informations professionnelles :
    Activité : Salesforce
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2009
    Messages : 923
    Points : 2 684
    Points
    2 684
    Par défaut
    Si tu veux que à l'appariton de ton datatable il soit trié tu devrais plutôt agir sur le "rich:column" et non pas sur le "datatable" ou bien le "extendeddatatable".

    il suffit de mettre au niveau de la colonne par laquelle tu veux trié un attribut "sortOrder" comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <rich:column id="idcol" 
    sortOrder="ASCENDING" label="colonne"
    sortable="true" sortBy="#{bean.colonne}">
        <f:facet name="header">
    	<h:outputText value="Identifiant" />
        </f:facet>
                <h:outputText value="#{bean.colonne}" />
    </rich:column>
    les differents valeurs sont ASCENDING , DESCENDING et UNSORTED.

    préviens moi si ça marche.

  10. #10
    Membre habitué
    Inscrit en
    Mars 2009
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 154
    Points : 149
    Points
    149
    Par défaut
    haskouse, ta solution avait l'air de créer le moins d'impact donc je l'ai testé et... ça marche !!!

    romaintaz, je n'ai pas le temps de me plonger dans la création de composants jsf même si un jour je devrais bien m'y coller tôt ou tard (c'est comme de créer des skin richfaces ça).
    J'ai réussi à gérer toutes mes autres fonctionnalités avec les outils proposés même si parfois ça en fait du code...

    Merci pour votre aide !! Cette affaire est résolue !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Champ independant: valeur par defaut dans une Table
    Par bakaccess dans le forum Access
    Réponses: 2
    Dernier message: 27/02/2008, 16h35
  2. prob du choix par defaut dans une liste deroulante
    Par _momo dans le forum Struts 1
    Réponses: 1
    Dernier message: 22/08/2007, 18h47
  3. Réponses: 6
    Dernier message: 06/09/2006, 15h50
  4. Mettre une date par defaut dans une textBox.
    Par yaumme dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 01/12/2005, 23h39
  5. [LG]Tri par insertion dans une liste chainée
    Par mister_dsg dans le forum Langage
    Réponses: 4
    Dernier message: 18/12/2003, 23h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo