Bonjour,

J'ai deux Tables dans une base de données je veux lancer un requête qui permet de faire la jointure entre les deux tables mais à chaque fois il me dits erreur de syntaxe,
Voici ma requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
select v.id from Variante as v inner join DetailVariante as dv on  dv.variante.id = v.id where v.groupeModele.id = '"+criterDao.getModel()+"'";
cette requête n'est pas complete c'est juste un extrait je pens que l'erreur vient d'ici

Voilà l'exception levée :
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
31
32
33
34
35
36
37
38
39
[ateliodoc] ERROR [http-8080-Processor24] ActionExceptionHandler.logException(147) | org.springframework.orm.hibernate3.HibernateQueryException: unexpected token: on near line 1, column 90 [select v.id from com.etai.atelio.doc.model.Variante as v inner join DetailVariante as dv on  dv.variante.id = v.id where v.groupeModele.id = '39' and v.id in(select v2.id from com.etai.atelio.doc.model.Variante as v2 inner join DetailVariante as dv2 on  dv2.variante.id = v2.id where v2.groupeModele.id = '39' and dv2.id.typDet = '133' and dv2.id.libDet = '1910')]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: unexpected token: on near line 1, column 90 [select v.id from com.etai.atelio.doc.model.Variante as v inner join DetailVariante as dv on  dv.variante.id = v.id where v.groupeModele.id = '39' and v.id in(select v2.id from com.etai.atelio.doc.model.Variante as v2 inner join DetailVariante as dv2 on  dv2.variante.id = v2.id where v2.groupeModele.id = '39' and dv2.id.typDet = '133' and dv2.id.libDet = '1910')]
Caused by: org.hibernate.hql.ast.QuerySyntaxException: unexpected token: on near line 1, column 90 [select v.id from com.etai.atelio.doc.model.Variante as v inner join DetailVariante as dv on  dv.variante.id = v.id where v.groupeModele.id = '39' and v.id in(select v2.id from com.etai.atelio.doc.model.Variante as v2 inner join DetailVariante as dv2 on  dv2.variante.id = v2.id where v2.groupeModele.id = '39' and dv2.id.typDet = '133' and dv2.id.libDet = '1910')]
	at org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:31)
	at org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:24)
	at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:59)
	at org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:258)
	at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:157)
	at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:111)
	at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:77)
	at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:56)
	at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:72)
	at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:133)
	at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:112)
	at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1623)
	at sun.reflect.GeneratedMethodAccessor160.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.springframework.orm.hibernate3.HibernateTemplate$CloseSuppressingInvocationHandler.invoke(HibernateTemplate.java:1192)
	at $Proxy41.createQuery(Unknown Source)
	at com.etai.atelio.doc.ident.dao.impl.UpdaterCritersDaoImpl$3.doInHibernate(UpdaterCritersDaoImpl.java:116)
	at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:362)
	at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:328)
	at com.etai.atelio.doc.ident.dao.impl.UpdaterCritersDaoImpl.getVarianteWithSecondeCriter(UpdaterCritersDaoImpl.java:114)
	at com.etai.atelio.doc.ident.dao.impl.UpdaterCritersDaoImpl.getVariantesWithCriter(UpdaterCritersDaoImpl.java:25)
	at com.etai.atelio.doc.ident.service.impl.InitSearchAndFilterFieldsImpl.searchByCriter(InitSearchAndFilterFieldsImpl.java:147)
	at com.etai.atelio.doc.webapp.ident.action.PostSearchIdentAction.searchBycriter(PostSearchIdentAction.java:133)
	at com.etai.atelio.doc.webapp.ident.action.PostSearchIdentAction.execute(PostSearchIdentAction.java:80)
	at org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:106)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
	at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
	at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain