HibernateQueryException: Expected positional parameter count: 2
Bonjour,
je me casse la tete depuis 2 jours sur cette erreur:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
Exception in thread "main" org.springframework.orm.hibernate3.HibernateQueryException: Expected positional parameter count: 2, actual parameters: [11641] [select content_id as {stat.contentid}, count(content_id) as {stat.number} from contentviewed where visitor_id in
(select visitor_id from contentviewed where content_id = ? ) and content_id != ? group by content_id order by
count(content_id) LIMIT 5;]; nested exception is org.hibernate.QueryException: Expected positional parameter count: 2, actual parameters: [11641] [select content_id as {stat.contentid}, count(content_id) as {stat.number} from contentviewed where visitor_id in
(select visitor_id from contentviewed where content_id = ? ) and content_id != ? group by content_id order by
count(content_id) LIMIT 5;]
Caused by: org.hibernate.QueryException: Expected positional parameter count: 2, actual parameters: [11641] [select content_id as {stat.contentid}, count(content_id) as {stat.number} from contentviewed where visitor_id in
(select visitor_id from contentviewed where content_id = ? ) and content_id != ? group by content_id order by
count(content_id) LIMIT 5;]
at org.hibernate.impl.AbstractQueryImpl.verifyParameters(AbstractQueryImpl.java:319)
at org.hibernate.impl.SQLQueryImpl.verifyParameters(SQLQueryImpl.java:201)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:145)
at org.springframework.orm.hibernate3.HibernateTemplate$32.doInHibernate(HibernateTemplate.java:906)
.............
.............. |
Ma requete en elle meme est la suivante:
Code:
1 2 3 4 5 6 7 8 9 10
|
<sql-query name="contentAlsoViewed">
<return alias="stat" class="com.entities.content.ContentViewedInfo"></return>
<![CDATA[
select content_id as {stat.contentid}, count(content_id) as {stat.number} from contentviewed where visitor_id in
(select visitor_id from contentviewed where content_id = ? ) and content_id != ? group by content_id order by
count(content_id) LIMIT 5;
]]>
</sql-query> |
je n´arrive pas À debloquer la situation malgré les recherche sur le net. Ca a certainement à voir avec les parametres (?), en fait c´est un seul parametre qui doit remplacer les 2 ? de ma requete. J´ai pour mon exemple utilisé le chiffre 11641, et j´ai testé la requete avec les parametres rentrés en "dur" elle marche.
J´appele cette requette dans ma methode Service:
Code:
1 2
|
getHibernateTemplate().findByNamedQuery("contentAlsoViewed",contentId); |
J´ai lu quelque part que ce genre d´erreur pourrait provenir du "and" de la requete.
Qu´est ce qui fait probleme dessus?
Merci