Полагаю, вам потребуется Hibernate.initialize(session.getSmsStudentArchives())
прямо перед доступом к ленивым дочерним элементам.
Но это приведет к дополнительному запросу для каждого сеанса.Вы можете использовать NamedEntityGraph для уменьшения доступа к базе данных:
@NamedEntityGraph(
name = "smsSchoolSessionWithStudentArchives",
attributeNodes = { @NamedAttributeNode("smsStudentArchives") })
public class SmsSchoolSession {
@EntityGraph("smsSchoolSessionWithStudentArchives")
List<SmsSchoolSession> findBySmsSchool_IdOrderByStartDateDesc(whatever id);
При этом все элементы сеанса будут иметь архивные элементы, доступные без использования Hibernate.initialize
.