понедельник, 1 марта 2010 г.

HqlSqlWalker throws NullPointerException with explicit joins and component mapping

HqlSqlWalker throws NullPointerException with explicit joins and component mapping - такой exception словил при попытке выполнить HSQL-запрос с явным join, например:

String query = "select playerStatus form PlayerStatus playerStatus JOIN playerStatus.player AS player WHERE player.playerName = :playerName";

Конечно, можно использовать неявный join, т.е. запрос может выглядеть так:
String query = "select playerStatus form PlayerStatus playerStatus WHERE playerStatus.player.name = :playerName";

Но в таком виде у меня не заработало - параметр "playerStatus.player.playerName" некорректно распознавался. Поиск в Google дал результат: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1895
Т.е. такой синтаксис не поддерживается (хотя в доке есть описание: http://docs.jboss.org/hibernate/stable/core/reference/en/html/queryhql.html). Странно, конечно. В результате я использовал обычный select с условием where, т.е.:

String query = "select playerStatus, player form PlayerStatus playerStatus, Player player WHERE playerStatus.playerID = :player.id and player.name = :playerName";

Комментариев нет:

Отправить комментарий