Bonjour,

Je me casse la tête sur le problèmes suivant :

Mon entité Technicien possède une liste de Taches qu'il effectue.
Ces taches pouvant être nombreuse puisse qu'on en garde l'historique, le lien entre les 2 entité est déclaré lazy.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
@Entity
@Table(name="TECHNICIAN")
public class Technician {
    @OneToMany(mappedBy="technician", fetch=FetchType.LAZY)
    private Set<Task> tasks = new HashSet<Task>();
    ...
}
Je souhaite dans une requête obtenir tout mes techniciens et leur associer les taches qu'il ont effectuées le jour J.

J'écris donc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT DISTINCT tch 
FROM Technician tch 
LEFT JOIN FETCH tch.tasks tsk 
WITH tsk.scheduledStartDate >= :schedStart_begin AND tsk.scheduledStartDate <= :schedStart_end 
WHERE tch.partner=:partner
Le problème :
org.hibernate.hql.ast.QuerySyntaxException: with-clause not allowed on fetched associations; use filters
(A noter que sans le fetch, ma requête me renvoie le résultat attendu.)

Si je ne peux pas utiliser de clause "with" avec un "fetch", comment puis-je filtrer mes taches tout en récupérant tous mes techniciens ? (y compris ceux qui n'ont pas de tache pour ce jour là).

en espérant trouver un peu de lumière par ici

D'avance je vous remercie