AFAIK это невозможно. Вы должны были открыть сессию Hibernate, чтобы сделать это.
В моем проекте я делаю то, что вам нужно, таким образом:
У меня весеннее служение вот так:
public interface SomeObjectManager {
List<SomeObject> getObjects(); // here we have lazy loading for SomeObject's properties
SomeObject getFullObject(long objectId); // here we're loading full object
}
Некоторые свойства SomeObject используют отложенную загрузку. Для их загрузки я использую HQL-запрос, подобный следующему:
SELECT s FROM SomeObject s
LEFT JOIN FETCH s.child children
LEFT JOIN FETCH children.items items
LEFT JOIN FETCH items.property
WHERE s.id=:id
Этот запрос заставляет hibernate загружать свойства, определенные как lazy.
Поэтому, если вам не нужны полностью загруженные экземпляры SomeObject, используйте метод getObjects (). Если вам нужны подробности о конкретном экземпляре SomeObject, вы используете метод getFullObject ().
Надеюсь, это поможет.