Почему использование имени столбца непосредственно в HQL работает только иногда?

У меня есть два HQL-запроса, которые я использую для быстрого и грязного модульного теста. Первый выглядит примерно так:

from Foo where SOME_FOREIGN_KEY = 42

Второй выглядит так:

from Foo as foo
 inner join foo.Bar as bar
 where foo.SOME_FOREIGN_KEY = 42

Столбец SOME_FOREIGN_KEY не является именем того, что, как известно Hibernate, отображается.

По какой-то причине первый запрос HQL работает, но второй один - нет.

Моя цель состоит в том, чтобы заставить вторую версию работать без перехода графа объектов к объекту, идентифицированному внешним ключом. Для этого теста у меня есть известный идентификатор, и мне нужны только объекты, связанные с этим идентификатором. Сам объект на другом конце отношения не имеет значения. Возможно ли это?

5
задан mpontillo 12 October 2010 в 17:50
поделиться