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

Hibernate Java Discussion :

Récupération d'un Set == élément vides


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut Récupération d'un Set == élément vides
    Hello,

    Je fais appel de cette manière dans un bean pour récupérer les éléments d'une collection :

    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
     
    	/**
             * Gets the beneficaire enfants 
             * 
             * @return Set<Beneficaire> returns the set of beneficaire enfants
             */
    	public Set<Personne> getBeneficaireEnfants() {
    		DossierBeneficiaire dossierBeneficiaire = dossierBeneficiaireService.findByCriteriaMainBeneficiaire(dossier);
    		if (dossierBeneficiaire != null) {
    			try {
    				LOG.debug("DOSSIER BENEFICIAIRE NOT NULL");
    				LOG.debug("ENFANT SIZE : " + dossierBeneficiaire.getBeneficiairesEnfant().size());
    				return dossierBeneficiaire.getBeneficiairesEnfant();
    			}
    			catch (Exception ex) {
    				LOG.debug("Exception while attempting to retrieve enfant " + ex);
    				return null;
    			}
    		}else {
    			return null;
    		}
    Dossier bénéficiaire n'est pas null mais la collection qu'il essaye de récupérer elle est vide

    Alors qu'en base dans la table de relation DossierBeneficiaire_BeneficiaireEnfant j ai bien des données

    Voici mon entité

    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
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
     
    package com.ibm.arpa.model;
     
    import java.io.Serializable;
    import java.util.Date;
    import java.util.HashSet;
    import java.util.Set;
     
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.FetchType;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.JoinColumn;
    import javax.persistence.JoinTable;
    import javax.persistence.ManyToMany;
    import javax.persistence.ManyToOne;
     
    import org.apache.commons.lang.builder.EqualsBuilder;
    import org.apache.commons.lang.builder.HashCodeBuilder;
    import org.apache.commons.lang.builder.ToStringBuilder;
    import org.hibernate.annotations.Cascade;
     
    /**
     * Entity for the DossierBeneficiaire table
     * 
     * @author Alexandre Jaquet
     *
     */
     
    @Entity
    public class DossierBeneficiaire implements Serializable{
     
    	/** The serial version id. */
    	private static final long serialVersionUID = 0;
     
    	/** The dossier beneficiaire id. */
    	@Id
    	@Column(name="id")
    	@GeneratedValue(strategy = GenerationType.IDENTITY)
    	private long id;
     
    	/** The dossier id. */
    	@ManyToOne(fetch = FetchType.EAGER, optional = true)
    	@Cascade((org.hibernate.annotations.CascadeType.SAVE_UPDATE))
    	private Dossier dossier;
     
    	/** The date debut. */
    	@Column(name="dateDebut", nullable=true)
    	private Date dateDebut;
     
    	/** The date fin. */
    	@Column(name="dateFin", nullable=true)
    	private Date dateFin;
     
    	/** The beneficiaire adulte. */
    	@ManyToMany(fetch = FetchType.EAGER)
    	@Cascade((org.hibernate.annotations.CascadeType.SAVE_UPDATE))
        @JoinTable(name = "DossierBeneficiaire_BeneficiaireAdulte",
            joinColumns = @JoinColumn(name="dossierBeneficiaire_fk"),
            inverseJoinColumns = @JoinColumn(name="personne_fk")
        )		
    	private Set<Beneficiaire> beneficiairesAdulte;
     
    	/** The beneficiaire enfant . */
    	@ManyToMany(fetch = FetchType.EAGER)
    	@Cascade((org.hibernate.annotations.CascadeType.SAVE_UPDATE))
        @JoinTable(name = "DossierBeneficiaire_BeneficiaireEnfant",
            joinColumns = @JoinColumn(name="dossierBeneficiaire_fk"),
            inverseJoinColumns = @JoinColumn(name="personne_fk")
        )		
    	private Set<Personne> beneficiairesEnfant;
     
    	/** The beneficiaire tiers . */
    	@ManyToMany(fetch = FetchType.EAGER)
    	@Cascade((org.hibernate.annotations.CascadeType.SAVE_UPDATE))
        @JoinTable(name = "DossierBeneficiaire_BeneficiaireTiers",
            joinColumns = @JoinColumn(name="dossierBeneficiaire_fk"),
            inverseJoinColumns = @JoinColumn(name="personne_fk")
        )		
    	private Set<Personne> beneficiairesTiers;
     
    	/**
             * Constructor
             */
    	public DossierBeneficiaire() {
    		beneficiairesAdulte = new HashSet<Beneficiaire>();
    		beneficiairesEnfant = new HashSet<Personne>();
    		beneficiairesTiers = new HashSet<Personne>();
    	}
     
    	/**
             * Gets the BeneficiaireEnfants
             * 
             * @return Set<Beneficiaire> returns the BeneficairesEnfant
             */
    	public Set<Personne> getBeneficiairesEnfant() {
    		return beneficiairesEnfant;
    	}
     
    	/**
             * Sets the BeneficiaireEnfants
             * 
             * @param beneficiairesEnfant
             *                      The set of beneficiaire enfants to set
             */
    	public void setBeneficiairesEnfant(Set<Personne> beneficiairesEnfant) {
    		this.beneficiairesEnfant = beneficiairesEnfant;
    	}
     
    	/**
             * Gets the BeneficaireTiers 
             * 
             * @return      Set<Beneficiaire> returns the set of beneficiaire
             *              
             */
    	public Set<Personne> getBeneficiairesTiers() {
    		return beneficiairesTiers;
    	}
     
    	/**
             * Sets the BeneficaireTiers
             * 
             * @param beneficiairesTiers
             *                      The beneficiaire tiers to set
             */
    	public void setBeneficiairesTiers(Set<Personne> beneficiairesTiers) {
    		this.beneficiairesTiers = beneficiairesTiers;
    	}
     
    	/**
             * Gets the id
             * 
             * @return long returns the id
             */
    	public long getId() {
    		return id;
    	}
     
    	/**
             * Sets the id
             * 
             * @param id
             *                      The id to set
             */
    	public void setId(long id) {
    		this.id = id;
    	}
     
    	/**
             * Gets the Dossier
             * 
             * @return Dossier returns the DossierId
             */
    	public Dossier getDossier() {
    		return dossier;
    	}
     
    	/**
             * Sets the Dossier
             * 
             * @param dossier
             *                      The Dossier to set
             */
    	public void setDossier(Dossier dossier) {
    		this.dossier = dossier;
    	}
     
    	/**
             * Gets the date debut
             * 
             * @return Date returns the date debut
             */
    	public Date getDateDebut() {
    		return dateDebut;
    	}
     
    	/**
             * Sets the date debut
             * 
             * @param dateDebut
             *                      The date debut to set
             */
    	public void setDateDebut(Date dateDebut) {
    		this.dateDebut = dateDebut;
    	}
     
    	/**
             * Gets the date fin
             * 
             * @return Date returns the date fin
             */
    	public Date getDateFin() {
    		return dateFin;
    	}
     
    	/**
             * Sets the date fin
             * 
             * @param dateFin
             *                      The date fin to set
             */
    	public void setDateFin(Date dateFin) {
    		this.dateFin = dateFin;
    	}
     
    	/**
             * Gets the Beneficiaire 
             * 
             * @return Beneficiaire returns the Beneficiaire
             */
    	public Set<Beneficiaire> getBeneficiairesAdulte() {
    		return beneficiairesAdulte;
    	}
     
    	/**
             * Sets the Beneficiaire
             * 
             * @param beneficiaire
             *                      The Benficiaire to set
             */
    	public void setBeneficiairesAdulte(Set<Beneficiaire> beneficiairesAdulte) {
    		this.beneficiairesAdulte = beneficiairesAdulte;
    	}
     
    	/**
             * Does our two object are equals ?
             * 
             * @param obj
             *                      The object to compare to
             * @return boolean returns true if the gived paramater is equal to our current object
             * 
             */
    	@Override
    	public boolean equals(Object obj) {
    		return EqualsBuilder.reflectionEquals(this, obj);
    	}
     
    	/**
             * Gets the hash code
             * 
             * @return int return the hash code of the current adresse
             */
    	@Override
    	public int hashCode() {
    		return HashCodeBuilder.reflectionHashCode(this);
    	}
     
    	/**
             * Make a String representation of the current adresse
             */
    	@Override
    	public String toString() {
    		return ToStringBuilder.reflectionToString(this);
    	}
    }

  2. #2
    Membre Expert
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Par défaut
    Il faudrait sortir de logs de tes requêtes SQL.

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

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    c'est résolu, il s'avérait en fait qu'il faille que je parcoure la collection des entités DossierBeneficiaire pour récupérer le bon set

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

Discussions similaires

  1. [xml + xsl] détection d'élément vide
    Par tut dans le forum XSL/XSLT/XPATH
    Réponses: 20
    Dernier message: 11/05/2007, 10h44
  2. Connaitre un élément vide
    Par thierry337 dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 14/03/2006, 08h51
  3. Réponses: 7
    Dernier message: 20/11/2005, 19h26
  4. Supprimé des éléments vide d'un tableau
    Par shinux2004 dans le forum Langage
    Réponses: 4
    Dernier message: 04/07/2005, 19h40
  5. Group by, jointure, élément vide
    Par Tan dans le forum Langage SQL
    Réponses: 11
    Dernier message: 24/11/2004, 13h48

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