bonjour tout le monde, j'ai un probleme au niveau de récuperation d'un champs.
je passe en parametre le nom d'un client et je voudrais récuperer le nom de ce client , date reservation et les info concernant la reservation de ce client.dans la table reservation j'ai comme champs le code_client,
donc il faut que je fasse une jointure entre la table client et reservation,mais cette jointure ne marche pas.
voila le code de la requete:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public List resultatReservation(String input) {
	   Session session = HibernateSessionFactory.currentSession();
 
	   List list=(List)session.createQuery("from Client , Reservation  " +
	   		"where Client.CODE_CLIENT=Reservation.CODE_CLIENT and NOM like '"+input+"' ").list();
return list;
	}
pour lister la requete:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
String nom="client nom";
		ReservationService rs =new ReservationService();
        Reservation r=new Reservation();
Iterator it=rs.resultatReservation(nom).iterator();
while(it.hasNext())
   { 			
	r=(Reservation)it.next();
System.out.println("nom :"+r.getClient().getNom()) ;
   }
erreur:
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
Exception in thread "main" org.hibernate.hql.ast.QuerySyntaxError: Invalid path: 'Client.CODE_CLIENT' [from com.gh.model.Client , com.gh.model.Reservation  where Client.CODE_CLIENT=Reservation.CODE_CLIENT and NOM like 'client nom' ]
	at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:63)
	at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:196)
	at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:130)
	at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:83)
	at org.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:427)
	at org.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:884)
	at org.hibernate.impl.SessionImpl.list(SessionImpl.java:834)
	at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
	at com.gh.service.ReservationService.resultatReservation(ReservationService.java:63)
	at com.gh.model.Application.main(Application.java:229)
Caused by:  Invalid path: 'Client.CODE_CLIENT'
	at org.hibernate.hql.ast.LiteralProcessor.lookupConstant(LiteralProcessor.java:85)
	at org.hibernate.hql.ast.DotNode.resolve(DotNode.java:172)
	at org.hibernate.hql.ast.FromReferenceNode.resolve(FromReferenceNode.java:87)
	at org.hibernate.hql.ast.FromReferenceNode.resolve(FromReferenceNode.java:83)
	at org.hibernate.hql.ast.HqlSqlWalker.resolve(HqlSqlWalker.java:463)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.expr(HqlSqlBaseWalker.java:863)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.exprOrSubquery(HqlSqlBaseWalker.java:3713)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.comparisonExpr(HqlSqlBaseWalker.java:3190)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:1405)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:1330)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.whereClause(HqlSqlBaseWalker.java:599)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:404)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:201)
	at org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:151)
	at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:189)
	... 8 more
merci pour votre aide