Bonjour,

dans le cadre de mes études je dois développer un petit applicatif utilisant JPA, HSQL.

J'ai l'entité : Event
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
 
 @Entity
public class Event implements Serializable, EventItf {
 
	private long id;	
	private String title;
	private String place;
	private int date;
	private int hour;
	private List<Crew> crews;
 
	public Event() {};
 
	@GeneratedValue	
	@Id	
	public long getId() {
		return id;
	}
	...
	@OneToMany
	public List<Crew> getCrews() {
		return crews;
	}
	public void setCrews(List<Crew> crews) {
		this.crews = crews;
	}
}
Event possède une liste de crew.

Dans ma base de données j'ai bien les tables event, event_crew (event_id, crews_id)

Pourtant lorsque je lance la requête suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
@GET
@Path("{id_event}/crews/")
@Produces(MediaType.APPLICATION_JSON)
public Collection<Crew> getCrewList(@PathParam("id_event") String eventId) {
		EntityManager em = EntityManagerImpl.getEntityManager();
		String str = "select c from event as e " +
		             "join crews as c " +
				     "where e.id = :idEvent" ;
		Query query = em.createQuery(str);
		query.setParameter("idEvent", eventId);
		return query.getResultList();
	}
j'ai le message d'erreur suivant :
org.hibernate.hql.internal.ast.QuerySyntaxException: event is not mapped [select c from event as e join crews as c where e.id = :idEvent]

Je ne comprends pas pourquoi vu qu'il arrive bien à créer les tables.
Merci pour votre aide.