Bonjour, en executant une requete JPQL je me retrouve avec une liste contenant X fois le meme objet.

si ma requete doit retourner 10 lignes, le resultat du JPQL va etre 10 fois la premiere ligne

quelqu'un a deja eu le probleme ?
PS : j'ai vérifié la requete sql

Le code :
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
Query query = em.createQuery("SELECT h from HotelsDispos h WHERE h.hdiHotelid=:hotelId AND h.hdiDatedispo >= :dateDeb and h.hdiDatedispo < :dateFin");
        query.setParameter("hotelId", hotelReference.getCode());
 
        try {
            query.setParameter("dateDeb", sdf.parse(dateDebutDDMMYYYY));
            query.setParameter("dateFin", sdf.parse(dateFinDDMMYYYY));
        } catch (ParseException ex) {
            throw new BusinessException("BusinessException.availability.date.parsing");
        }
 
        List<HotelsDispos> dispos = query.getResultList();
 
        Logger.getLogger(HotelBean.class.getName()).finest(":::::::::::::::::::::::>"+dispos.get(0).getHdiCodeprestation()+"::"+dispos.get(0).getHdiTotal());
        Logger.getLogger(HotelBean.class.getName()).finest(":::::::::::::::::::::::>"+dispos.get(1).getHdiCodeprestation()+"::"+dispos.get(0).getHdiTotal());
        Logger.getLogger(HotelBean.class.getName()).finest(":::::::::::::::::::::::>"+dispos.get(2).getHdiCodeprestation()+"::"+dispos.get(0).getHdiTotal());
Les logs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
[#|2009-07-03T10:30:01.556+0200|FINEST|sun-appserver2.1|com.hotel.business.HotelBean|_ThreadID=20;_ThreadName=httpSSLWorkerThread-80-0;ClassName=com.hotel.business.HotelBean;MethodName=getDispos;_RequestID=1afc2fcf-c528-4329-a39c-34e108b212a9;|:::::::::::::::::::::::>C1::54|#]
 
[#|2009-07-03T10:30:01.557+0200|FINEST|sun-appserver2.1|com.hotel.business.HotelBean|_ThreadID=20;_ThreadName=httpSSLWorkerThread-80-0;ClassName=com.hotel.business.HotelBean;MethodName=getDispos;_RequestID=1afc2fcf-c528-4329-a39c-34e108b212a9;|:::::::::::::::::::::::>C1::54|#]
 
[#|2009-07-03T10:30:01.558+0200|FINEST|sun-appserver2.1|com.hotel.business.HotelBean|_ThreadID=20;_ThreadName=httpSSLWorkerThread-80-0;ClassName=com.hotel.business.HotelBean;MethodName=getDispos;_RequestID=1afc2fcf-c528-4329-a39c-34e108b212a9;|:::::::::::::::::::::::>C1::54|#]
Le bean :
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
@Entity
@Table(name = "HOTEL_DISPOS_VIEW")
@NamedQueries({@NamedQuery(name = "HotelsDispos.findAll", query = "SELECT h FROM HotelsDispos h"), @NamedQuery(name = "HotelsDispos.findByHdiHotelid", query = "SELECT h FROM HotelsDispos h WHERE h.hdiHotelid = :hdiHotelid"), ....)
public class HotelsDispos implements Serializable {
    private static final long serialVersionUID = 1L;
    @Basic(optional = false)
    @Column(name = "HDI_HOTELID")
    @Id
    private String hdiHotelid;
    @Basic(optional = false)
    @Column(name = "HDI_DATEDISPO")
    @Temporal(TemporalType.DATE)
    private Date hdiDatedispo;
    @Basic(optional = false)
    @Column(name = "HDI_CODEPRESTATION")
    private String hdiCodeprestation;
    @Column(name = "HDI_TOTAL")
    private int hdiTotal;
    @Column(name = "HDI_OCCUPE")
    private int hdiOccupe;
    @Column(name = "HDI_HS")
    private int hdiHs;
    @Column(name = "HDI_BLOQUE")
    private int hdiBloque;
    @Column(name = "HDI_LOCK")
    private int hdiLock;
    @Column(name = "HDI_LIBPRESTATION")
    private String hdiLibprestation;
    @Column(name = "HDI_PRIX")
    private Double hdiPrix;