从CustomScope调用时“无法初始化代理 - 无会话”

时间:2014-11-28 15:04:25

标签: hibernate session jpa lazy-evaluation

从控制器调用存储库时我遇到了一个小问题,该控制器被注释为此(此控制器位于服务器“web-admin-service”,这是一个管理面板)

@Named
@Scope("view")
public class PlaceController implements Serializable {}

为了向您展示一个例子,我在我的服务中有这些实体(网络服务) 大学和学生

public class University {
 private String id;
 private String name;
 private String address;

 @OneToMany(cascade = CascadeType.DETACH,fetch = FetchType.LAZY)
 private List<Student> students;

 // setters and getters
}

现在当我从Controller调用我的DAO时,它会在JPA存储库上调用一个方法(一个简单的`SELECT u FROM University u),学生列表没有填充并出现此错误: “无法初始化代理 - 无会话”

但..当我直接在我的服务中拨打完全相同的电话时,我没有这个问题? 即使fetch = FetchType.LAZY,当我打电话给学生时,我的学生列表也正确填充.get(0).getName();

ps:我使用的是Spring,JPa和Hibernate

0 个答案:

没有答案