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 :

Scrollabledatatable/profondeur des données et colonnes dynamiques


Sujet :

JSF Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Par défaut Scrollabledatatable/profondeur des données et colonnes dynamiques
    Bonjour,

    J'ai un soucis qui semble assez simple dans le fond mais dans la forme, je n'y arrive pas.
    Ce que je cherche à faire est la chose suivante :

    J'ai un une liste d'objet A que je souhaite afficher dans une scrollabledatatable. Cet objet A contient lui même une liste d'objet B.
    Ce que je veux afficher c'est l'itération de la collection A ET l'iteration de la collection de B avec !

    En gros :

    A1
    B
    B
    A2
    B
    B
    B
    A3
    B
    B
    B

    J'ai réussi faire cela avec une datatable avec le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <rich:dataTable id="listeA"  binding="#{controller.dataTable}"
    						value="#{eontroller.allA}" var="ed">
         <rich:subtable value="#{ed.quotaFormComp}" var="quotaFormComp">
              ...
         <rich:subtable>
    </rich:dataTable>
    Avec une scrollable c'est autre chose, j'ai plein de bug surement du a l'inclusion de la subtable.

    Y a t-il donc une manière plus conventionnelle pour réaliser ce type de tableau ?

    D'autre part, j'aimerai, selon ma collection pouvoir créer des colonnes dynamiquement en fonction des données présents dans ma collection. J'ai eu beau essayer avec des <a4j:repeat> impossible de créer quoi que ce soit.
    A part pondre du code java et faire un binding, y'a t-il une solution ?

    Merci pour vos éclairsissements

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Ce n'est pas possible d'utiliser subTable avec scrollableDataTable.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Par défaut
    Citation Envoyé par Sniper37 Voir le message
    Ce n'est pas possible d'utiliser subTable avec scrollableDataTable.
    C'est bien ce que je pensais. y à t-il une solution à explorer avant que je ne le fasse définitivement coté java ?

  4. #4
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par davidovitch Voir le message
    C'est bien ce que je pensais. y à t-il une solution à explorer avant que je ne le fasse définitivement coté java ?
    pas à ma connaissance..
    ya beaucoup de contraintes avec la scrollabledataTable, dataTable est plus stable..

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Par défaut
    Citation Envoyé par Sniper37 Voir le message
    pas à ma connaissance..
    ya beaucoup de contraintes avec la scrollabledataTable, dataTable est plus stable..
    En effet, je le découvre a mes dépends...
    Un code java de génération coté java qui fonctionne pour la datatable me déclenche un joli petit :
    java.lang.NullPointerException at javax.faces.component.UIComponentBase.findComponent(UIComponentBase.java:565)
    lorsque je remplace la datatable par une scrollable...

    Fait suer, tout mes autres écrans sont scrollable...

  6. #6
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    sinon tu peux utiliser ui:repeat , ça peut etre la solution avec scrollableDataTable.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Par défaut
    Et bien après essais, ça n'a pas l'air de fonctionner mieux que a4j:repeat
    Y'a vraiment pas d'autre moyen que de faire avec des subtable un truc comme ça ?

    A1
    B
    B
    A2
    B
    B
    B
    A3
    B
    B
    B

    En gros c'est comme si je voulai lister tout les commandes de tout mes clients. C'est pourtant courant comme problématique

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class Client
     private String nom
     private ArrayList<Commande> commande
     
     
    public class Commande
     private String libelle

  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 : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Citation Envoyé par davidovitch Voir le message
    En gros c'est comme si je voulai lister tout les commandes de tout mes clients. C'est pourtant courant comme problématique
    C'est un avis, mais de toutes façons, c'est pour cela qu'il existe la subTable. L'autre solution étant de générer soit même sa table en utilisant des boucles repeat (avec a4j:repeat par exemple)...

    Quel souci rencontres-tu avec a4j:repeat ?
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  9. #9
    Membre éprouvé

    Profil pro
    Inscrit en
    Février 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2009
    Messages : 49
    Par défaut utilisation du data model
    bonjour ,
    vous pouvez voir mon dernier message dans cette discussion peut être il va vous aider
    http://www.developpez.net/forums/d72...s/#post4197524

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Par défaut
    Citation Envoyé par romaintaz Voir le message
    C'est un avis, mais de toutes façons, c'est pour cela qu'il existe la subTable. L'autre solution étant de générer soit même sa table en utilisant des boucles repeat (avec a4j:repeat par exemple)...

    Quel souci rencontres-tu avec a4j:repeat ?
    Impossible de créer dynamiquement des colonnes de scrollableDataTable en faisant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <a4j:repeat value="#{quotaFormComp.quotas}" var="quota" >
    	<rich:column width="75px">
    		<f:facet name="header">Q.#{quota.libelle}</f:facet>
    		<h:outputText value="#{quota.valeur}"></h:outputText>
    	</rich:column>
    </a4j:repeat>
    @fahsinet : Super post! Je suis tombé dessus hier avant que vous ne postiez le lien. Je vais tester cela,en effet, si c'est ma subtable qui pose problème dans ma scrollable, avec votre solution au moins, je n'aurai pas de subtable.
    Je vous tiens au courant.

  11. #11
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    En effet,
    dataTable supporte l'imbrication d'autres dataTable ou une subTable, mais ce n'est pas le cas de ScrollerDataTable.

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Par défaut
    J'allai le dire...
    Je viens de tester d'imbriquer une dataTable dans une scrollable, ça ne fonctionne pas
    Enfin, si, ça fonctionne dans le sens ou je n'ai pas d'execption de levée. Par contre, une seule colonne est dessinée et elle est complètement vide de toute donnée

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Par défaut
    Bon, j'ai une solution qui fonctionne mais qui n'est pas encore entièrement satisfaisante.
    Certaines de mes données devaient être disposée en colonne mais faute de pouvoir faire de la création dynamique de colonne, je les fait apparaitre en ligne dans une datatable imbriquée telle que l'a fait fahsinet.

    Si quelqu'un a une solution pour la création dynamique de colonne, je pense que je ne serai pas le seul prenneur

Discussions similaires

  1. [PDO] afficher mes données par colonnes dynamiquement
    Par mariafan dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 24/07/2007, 09h52
  2. Réponses: 4
    Dernier message: 14/06/2007, 15h50
  3. Réponses: 2
    Dernier message: 19/01/2007, 07h00
  4. [XSLT] Rassembler des données en colonnes suivant un identifiant
    Par Devilpika dans le forum XSL/XSLT/XPATH
    Réponses: 12
    Dernier message: 07/12/2006, 13h04
  5. regrouper des données en colonne
    Par antakini dans le forum Access
    Réponses: 4
    Dernier message: 24/11/2006, 14h35

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