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 :

table dynamique et binding sur colonnes dynamique


Sujet :

JSF Java

  1. #1
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut table dynamique et binding sur colonnes dynamique
    Hello,

    Je cherche à réaliser du binding sur un nombre de colonne dynamique, créer une table de manière dynamique je sais le faire mais le problème se corse lorsque je veux remplir les données d'un nombre indéfinis de colonne surtout lorsque les données de ces colonnes ne proviennent pas de la même source de données que celle qui me sert à remplir mes colonnes non dynamique

    Lorsque l'on définit une table de manière programmatique on peut utilisé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      			ValueBinding myItem = FacesContext.getCurrentInstance().getApplication().createValueBinding(binding[j]);
      			colText.setValueBinding("value", myItem);
    ou binding représente une liste de binding "statiques" j'aimerais savoir si c'est possible de créer par exemple une liste de binding sur un objet différent de l'utilisation de la valeur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    table.setValue(list);
    et de créer un binding sur un tableau ou je ferais appel à un index

    example

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    binding[index] = "#{liste2[+ indexBinding + "].bean.checked}"

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    bon ben je vais me débrouiller avec des findComponent sur les children de la table

  3. #3
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    Pour je ne sais quelle raison le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    		int nbRows = this.dynamicTableJugement.getRowCount();
    		FacesContext fc = FacesContext.getCurrentInstance();
    		UIViewRoot view = fc.getViewRoot();
     
    		for (int i = 0; i < nbRows; i++) {
    			for (int m = 2; m < beneficiaires.size(); m++) {
    				System.out.println("iceform:tableJugement:" + i + ":output_" + m);
    				UIComponent text = view.findComponent("iceform:tableJugement:" + i + ":output_" + m);
    				((UIData) text).setValue("X");
    			}
    		}
    Me renvoye null pour mon composant text

    Le system out me donne bien le composant à savoir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    iceform:tableJugement:0:output_2
    mais le findComponent ne le trouve pas alors que dans mon code générer j'ai belle et bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <span class="iceOutTxt" id="iceform:tableJugement:0:output_2"></span>
    Une idée ?

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    for (int i = 2; i < beneficiaires.size() + 2; i++) {
    			UIComponent row = (UIComponent) findComponent(dynamicTableJugement, "column_" + i);
    			System.out.println("row id" + row.getId());
    			if (i >= 2) {
    				for (int m = 0; m < nbRows; m++) {
    					UIComponent text = findComponent(row, "output_" + i);					
    					//récupération de la valeur et affectation
    				}
    			}
    		}
    et parcourir récursivement le parent

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    private UIComponent findComponent(UIComponent parent, String id) {
    	System.out.println("parent id = " + parent.getId());
    	System.out.println("kid id = " + id);
            if (id.equals(parent.getId())) {
                return parent;
            }
            Iterator<UIComponent> childs= parent.getFacetsAndChildren();
            while (childs.hasNext()) {
                UIComponent child= childs.next();
                UIComponent found = findComponent(child, id);
                if (found != null) {
                    return found;
                }
            }
            return null;
        }

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

Discussions similaires

  1. Jointure sur colonne dynamique
    Par marivi dans le forum Langage SQL
    Réponses: 7
    Dernier message: 07/11/2012, 16h54
  2. Réponses: 7
    Dernier message: 18/06/2012, 12h30
  3. Tri dynamique sur colonnes d'une table
    Par scariou29 dans le forum BIRT
    Réponses: 10
    Dernier message: 17/09/2008, 17h51
  4. Création de table avec nom de colonne dynamique
    Par jibileg dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 03/12/2007, 23h13
  5. inserer une colonne dynamique dans une table
    Par natacha5 dans le forum Access
    Réponses: 12
    Dernier message: 04/07/2007, 17h47

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