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 :

Deux listes déroulantes dynamiques


Sujet :

JSF Java

  1. #1
    Membre éprouvé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Par défaut Deux listes déroulantes dynamiques
    Bonjour,
    Je suis un peu débutant en JEE
    J’ai besoin de réaliser une IHM avec deux liste déroulante en JSF ou (primefaces) pour la quel si je choisir une valeur dans la premier lise les valeurs de la deuxième liste ce mette à jour.
    Dans mon cas j’ai deux entity « Wilaya » et « Daira» les valeurs de la liste déroulant Daira dépende du choix dans la liste déroulant de Wilaya.

    1. La relation entre met deux entité ?
    2. La migration des clés étrangère ?
    3. Relation de dépendance des données?
    4. Quelle dynamique ajouter dans le JSF partie vue pour avoir le résultat voulu ?


    Code des entity:

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    package dz.elit.sirh.admin.entity;
     
    import java.io.Serializable;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.NamedQuery;
    import javax.persistence.Table;
     
     
    @Entity
    @Table(name = "t_wilaya")
    @NamedQuery(name = "findAllWilaya", query = "SELECT b FROM t_wilaya b")
    public class Wilaya implements Serializable
    {
        private static final long serialVersionUID = 1L;
        @Id
        @GeneratedValue(strategy = GenerationType.AUTO)
        private Long id;
     
        @Column(nullable = false)
        private String libeller;
     
        public String getLibeller()
        {
            return libeller;
        }
     
        public void setLibeller(String libeller)
        {
            this.libeller = libeller;
        }
     
        public Long getId()
        {
            return id;
        }
     
        public void setId(Long id)
        {
            this.id = id;
        }
     
        @Override
        public int hashCode()
        {
            int hash = 0;
            hash += (id != null ? id.hashCode() : 0);
            return hash;
        }
     
        @Override
        public boolean equals(Object object)
        {
            // TODO: Warning - this method won't work in the case the id fields are not set
            if (!(object instanceof Wilaya))
            {
                return false;
            }
            Wilaya other = (Wilaya) object;
            if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id)))
            {
                return false;
            }
            return true;
        }
     
        @Override
        public String toString()
        {
            return "dz.elit.sirh.admin.entity.Wilaya[ id=" + id + " ]";
        }
     
    }

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
     
    package dz.elit.sirh.admin.entity;
     
    import java.io.Serializable;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.NamedQuery;
    import javax.persistence.Table;
     
     
    @Entity
    @Table(name = "t_daira")
    @NamedQuery(name = "findAllDaira", query = "SELECT b FROM t_daira b")
    public class Daira implements Serializable
    {
     
        private static final long serialVersionUID = 1L;
        @Id
        @GeneratedValue(strategy = GenerationType.AUTO)
        private Long id;
     
        public String getLibeller()
        {
            return libeller;
        }
     
        public void setLibeller(String libeller)
        {
            this.libeller = libeller;
        }
     
        @Column(nullable = false)
        private String libeller;
     
        public Long getId()
        {
            return id;
        }
     
        public void setId(Long id)
        {
            this.id = id;
        }
     
        @Override
        public int hashCode()
        {
            int hash = 0;
            hash += (id != null ? id.hashCode() : 0);
            return hash;
        }
     
        @Override
        public boolean equals(Object object)
        {
            // TODO: Warning - this method won't work in the case the id fields are not set
            if (!(object instanceof Daira))
            {
                return false;
            }
            Daira other = (Daira) object;
            if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id)))
            {
                return false;
            }
            return true;
        }
     
        @Override
        public String toString()
        {
            return "dz.elit.sirh.admin.entity.Daira[ id=" + id + " ]";
        }
    }
    Merci d’avance

  2. #2
    Membre averti
    Inscrit en
    Juillet 2011
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2011
    Messages : 43
    Par défaut
    La relation est assez simple :

    Wilaya
    --------
    id(pk)
    libelle

    Daira
    --------
    id(pk)
    libelle
    wilayaId(fk)

    En ce qui concerne JPA(ou Hibernate), tu peux générer automatiquement tes Entités à partir de ton IDE.

  3. #3
    Membre éprouvé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Par défaut
    Je cois le plus dure ces de faire la dynamique dans le JSF (partie vue) pour avoir le résultat voulu ? (résultat voulu : si je choisir une valeur dans la premier lise les valeurs de la deuxième liste ce mette à jour automatiquement.)

    Comme je n'est aucun idées de comment je vais faire sa je voudrai avoir des pistes ou une façon de faire


    Citation Envoyé par Kixxx Voir le message
    tu peux générer automatiquement tes Entités à partir de ton IDE.
    J’utiliser netBeans comme IDE je voudrais savoir quel plugin UML vous utiliser pour générés vos entity ?

    merci d'avance

  4. #4
    Membre éclairé
    Inscrit en
    Février 2010
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 43
    Par défaut
    Citation Envoyé par geforce Voir le message
    Je cois le plus dure ces de faire la dynamique dans le JSF (partie vue) pour avoir le résultat voulu ? (résultat voulu : si je choisir une valeur dans la premier lise les valeurs de la deuxième liste ce mette à jour automatiquement.)

    Comme je n'est aucun idées de comment je vais faire sa je voudrai avoir des pistes ou une façon de faire




    J’utiliser netBeans comme IDE je voudrais savoir quel plugin UML vous utiliser pour générés vos entity ?

    merci d'avance

    Utilise ajax pour mettre a jour les données dans la second liste.
    par exemple au moment du click de l'utilisateur sur un élément de la première liste tu fais une requête sur la seconde liste.

  5. #5
    Membre éprouvé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Par défaut
    Citation Envoyé par Neomaven Voir le message
    Utilise ajax pour mettre a jour les données dans la second liste.
    par exemple au moment du click de l'utilisateur sur un élément de la première liste tu fais une requête sur la seconde liste.
    Oui, c’est bien beau de dire utilise de l’Ajax !!? (Mais ça donne pas de détails) comment en peut le faire ? Existe-t-il Méthode équivalant à XMLHttpRequest ?

    Sinon Oui pour le cotés utilisateur sa va ce passer comme tu dis.

    A++

  6. #6
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    Regarde ce tutoriel sur AJAX pour les listes liées, ce tuto utilise php coté serveur mais le principe est le même.

    A+.

  7. #7
    Membre éprouvé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Par défaut
    Citation Envoyé par andry.aime Voir le message
    Bonjour,

    Regarde ce tutoriel sur AJAX pour les listes liées, ce tuto utilise php coté serveur mais le principe est le même.
    A+.
    MERCI pour le lien

    j'ai bien compris le principe (comme a dit "Neomaven") et aussi j'ai déjà utilisé l'Ajax en PHP.

    Mais je cherche techniquement comment sa pourrais fonctionner avec des JSF, comment je pourrai utiliser de l'Ajax avec JEE ?

    un tuto avec la bonne Techno serais le bienvenu (qui fait notre cas)

    Merci d'avance

  8. #8
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Par défaut
    Tu peux utiliser des bibliothèques de composants Ajax comme RichFaces par exemple.
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 112
    Par défaut
    Bonjour,

    j'ai déjà donné un exemple pareil de 2 listes, dont la 2eme liste dépond de la 1ère, sur un sujet posté precedemment sur le forum. ( sans utiliser Ajax )

    c'est par là :
    http://www.developpez.net/forums/d11...enu-dynamique/

    j'espere que ça t'aidera

  10. #10
    Membre éprouvé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Par défaut
    Bonjour voici mes deux entiter que j'ai implaimenter

    je voudrais juste confirmer que ces les bonne configuration pour la relation entre les 2 table et que j'ai utiliser les bonne annotation ?

    voilà la relation que je veux exprimer :
    entité1 :Wilaya
    --------
    id(pk)
    libelle

    entité2: Daira
    --------
    id(pk)
    libelle
    wilayaId(fk)

    les entités :
    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
     
    @Entity
    @Table(name = "t_wilaya")
    //@NamedQuery(name = "findAllWilaya", query = "SELECT b FROM t_wilaya b")
    public class Wilaya implements Serializable
    {
        private static final long serialVersionUID = 1L;
        @Id
        @GeneratedValue(strategy = GenerationType.SEQUENCE)
        private Long id;
     
        @Column(nullable = false)
        private String codeWilaya;
     
        @Column(nullable = false)
        private String libeller;
     
        @OneToMany(mappedBy = "wilaya",fetch= FetchType.EAGER,cascade= CascadeType.ALL)
        private List<Daira> dairas;
     
    /* *********Geteur and Setter******** */
    .....  
    /* ******************************** */   
    }
    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
     
    @Entity
    @Table(name = "t_daira")
    //@NamedQuery(name = "findAllDaira", query = "SELECT b FROM t_daira b")
    public class Daira implements Serializable
    {
     
        private static final long serialVersionUID = 1L;
        @Id
        @GeneratedValue(strategy = GenerationType.SEQUENCE)
        private Long id;
        @Column(nullable = false)
        private String libeller;
        @OneToOne(fetch = FetchType.EAGER)
        @JoinColumn(name = "wilaya_fk", nullable = false)
        private Wilaya wilaya;
     
        /*********Setteur and Getter**********/
    ....
        /* ************************** */
    }
    aussi j'ai voulu faire une petite conception de mon IHM qui permet de saisir et de persister met Wilaya et Daira :

    comme il y un attribue de Wilaya dans l'entité Daira
    @OneToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "wilaya_fk", nullable = false)
    private Wilaya wilaya; [en faite je ne comprant pas pour quoi en doit mettre cette atribue ?]

    et qu'il y a un attribut de type liste<Daira> dans l'entité Wilaya
    @OneToMany(mappedBy = "wilaya",fetch= FetchType.EAGER,cascade= CascadeType.ALL)
    private List<Daira> dairas;

    comment je voir mon IHM j'ai deux page une pour saisie les Wilay une autre pour saisie les Daira, !!? Comment je peux gérais le fait qu'il y que un certain nombre de Daira qui sont contenu dans une Wilaya. (Liste déroulant dynamique pour les deux pages ??)

    Merci d’avance de votre éclaircissement (j'ai beaucoup besoin)

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 42
    Par défaut Deux listes déroulantes dynamiques
    Je Cherche à faire la même choses c pour savoir si avez trouver la solutions
    Merci

Discussions similaires

  1. [XL-2007] Utilisation des listes déroulantes dynamiques dans deux classeurs
    Par KramnikK dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 27/03/2015, 10h50
  2. Réponses: 2
    Dernier message: 05/01/2013, 12h42
  3. Calcul dynamique à partir de deux listes déroulantes
    Par Invité dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 08/12/2012, 19h47
  4. [PHP-JS] Deux listes déroulantes dynamiques
    Par zana74 dans le forum Langage
    Réponses: 9
    Dernier message: 29/08/2006, 12h36
  5. [FORMULAIRE] Liste déroulante dynamique
    Par bchristo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/01/2005, 10h07

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