Исключение запроса Coldfusion HQL — неожиданный токен

Под Lucee 4.5.1, используя Coldfusion/HQL, я получаю следующую ошибку:

Lucee 4.5.1.022 Error (org.hibernate.hql.ast.QuerySyntaxException)
Message     unexpected token: : near line 1, column 88 [from League where leagueID in (select leagueID from Game where seasonID=:sid and userID:=uid and showReportYN=1) order by leagueID]
Cause   org.hibernate.hql.ast.QuerySyntaxException
Stacktrace  The Error Occurred in
/my/file/code.cfm: line 39
...
39: qryLeagues = ORMExecuteQuery("from League where leagueID in (select leagueID from Game where seasonID=:sid and userID:=uid and showReportYN=1) order by leagueID", {sid=url.sid, uid=request.userID});
...

Кажется, это соответствует документации HQL: https://docs.jboss.org/hibernate/orm/4.3/devguide/en-US/html/ch11.html#d5e3400

И этот пост SO, похоже, также указывает на то, что все в порядке: неожиданный токен: (подзапрос hql

Не уверен, что мне не хватает...

Обновление №2

Ответ исправил это, но затем получил следующую ошибку:

No data type for node: org.hibernate.hql.ast.tree.IdentNode

Вот окончательный рабочий запрос (обратите внимание на псевдонимы классов в подзапросе):

qryLeagues = ORMExecuteQuery("from League where leagueID in (select g.League.leagueID from Game g where g.Season.seasonID=:sid and g.Season.User.userID=:uid and g.League.showReportYN=1)",

person TekiusFanatikus    schedule 20.11.2015    source источник


Ответы (1)


У вас есть = и : во втором параметре (на 88-м символе)

and userID:=uid

должно быть

and userID=:uid

сначала = потом :

person Matt Busche    schedule 20.11.2015