Requête JPQL avec OÙ sur les champs imbriqués

J'ai un java de la classe d'entité UserBean avec une liste d'événements:

@OneToMany
private List<EventBean> events;

EventBean a Date variable:

@Temporal(javax.persistence.TemporalType.TIMESTAMP)
private Date eventDate;

Maintenant dans UserBean je veux créer un NamedQuery qui renvoie toutes les dates qui sont comprises dans une plage spécifique:

@NamedQuery(name="User.findEventsWithinDates",
            query="SELECT u.events FROM UserBean u WHERE u.name = :name AND u.events.eventDate > :startDate AND u.events.eventDate < :endDate")

La requête ci-dessus ne compile pas. J'obtiens cette erreur:

The state field path 'u.events.eventDate' cannot be resolved to a valid type.

En passant, j'utilise EclipseLink la version 2.5.0.v20130507-3faac2b.

Que puis-je faire pour faire de cette requête? Merci.

OriginalL'auteur user473453 | 2013-09-09