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 :

[PrimeFaces] Tree et liste récursive


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Développeur Java
    Inscrit en
    Juillet 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2011
    Messages : 33
    Par défaut [PrimeFaces] Tree et liste récursive
    Bonjour à tous ,

    Je cherche à remplir un arbre p:tree avec une liste recursive mais je ne vois pas du tout comment faire...

    en entrée j'ai un objet contenant une liste d'objet fils qui contienne aussi une liste d'objet fils etc etc.

    Si quelqu'un à déjà fait ça ou peu m'aiguiller ce serait super

    D'avance merci

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 162
    Par défaut
    Bonjour luperrot,

    Alors, je n'ai pas trop compris, si c'est la fonction récursive en soi ou la fonction récursive appliquée au p:tree qui te pose problème.

    Dans le doute, je vais t'aiguiller sur les deux.

    Premièrement, voici un lien vers le composant primefaces expliquant l'implémentation coté serveur : Tree.

    On peut observer, que le composant Tree (côté client) n'a besoin que de la racine.

    Pour implémenter le coté serveur il suffit que ta racine (DefaultTreeNode) contienne tous tes fils.

    Je te conseille donc de faire une méthode d'initialisation que tu appelleras au moment opportun selon ton application.

    Dans cette méthode tu devras :
    - Instancier ta racine
    - Appeler un service ou juste une requête récupérant tous tes éléments pères du plus haut niveau.
    - Pour chaque père, créer un élément DefaultTreeNode contenant la donnée du père
    - Pour chaque père, assigner la racine au père (cf : lien)
    - Pour chaque père appeler la méthode récursive en passant le père en paramètre.

    La méthode récursive :
    - Appelle un service ou une requête récupérant tous les fils d'un père
    - Pour chaque fils, créer un élément DefaultTreeNode contenant la donnée du fils
    - Pour chaque fils, on assigne le père au fils
    - Pour chaque fils, on ré-appelle la fonction récursive

    Est-ce bien les informations que tu cherchais ?

  3. #3
    Membre averti
    Femme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Novembre 2012
    Messages : 22
    Par défaut
    g po vrmt compris
    tu peux poster tn code stp parce qu'il se trouve que g affaire o mm pb

  4. #4
    Membre averti
    Profil pro
    Développeur Java
    Inscrit en
    Juillet 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2011
    Messages : 33
    Par défaut
    Je pense que ça peux t'aider
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    private void chargerArborescence(){
    		OrganisationDTO organisationDTO = new OrganisationDTO(); 
    		transform = new VisualiserOrganisationWS();
     
    		organisationDTO = transform.transformeVisualiserArborescenceOrganisation();
    		organisationIHM = new OrganisationIHM(organisationDTO);
     
    		noeudRacine = new DefaultTreeNode(organisationIHM,null);
     
    		loadFils(noeudRacine,organisationIHM.getOrganisationList());
    	}
     
     
     
     
    	private List<OrganisationIHM> loadFils(TreeNode noeudPere,List<OrganisationIHM> organisationList){
     
    		if(organisationList != null){
     
    			for (OrganisationIHM organisationIHM : organisationList) {
    				TreeNode noeudPereSuivant = new DefaultTreeNode(organisationIHM,noeudPere);
     
    				// Appel Recursif
    				loadFils(noeudPereSuivant,organisationIHM.getOrganisationList());	
     
    			}
    		}
    		return organisationList;
    	}
    et désolé Narco j'avais oublié ce message qui est résolu et n'avais pas vu ta réponse

    en tout cas merci

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

Discussions similaires

  1. Liste récursive ?
    Par Cooky dans le forum Caml
    Réponses: 4
    Dernier message: 29/04/2012, 12h11
  2. Chart PrimeFaces avec une liste de projets
    Par othman22222 dans le forum JSF
    Réponses: 1
    Dernier message: 09/04/2012, 02h29
  3. liste récursive des fichiers d'un dossier dans une liste
    Par identifiant_bidon dans le forum Langage
    Réponses: 2
    Dernier message: 30/06/2010, 16h33
  4. [ksh] Liste récursive des fichiers, au format CSV
    Par Neuromancien2 dans le forum Linux
    Réponses: 2
    Dernier message: 19/02/2008, 23h41
  5. [Xul] l'élément tree: liste récursive et RDF
    Par TNorth dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/08/2005, 17h36

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