【问题标题】:Why am I getting LazyInitializationException when using OpenEntityManagerInViewFilter? (using Spring Roo)为什么在使用 OpenEntityManagerInViewFilter 时会出现 LazyInitializationException? (使用 Spring Roo)
【发布时间】:2023-03-12 18:55:01
【问题描述】:

我已经使用 Spring Roo 生成了我的项目,并且没有接触过 xml 文件。

我要做的就是通过实体的 ITD 方法获取集合。

我收到以下错误:

    SEVERE: Servlet.service() for servlet MyProject threw exception
org.hibernate.LazyInitializationException: failed to lazily initialize a collect
ion of role: com.myproject.main.domain.Juser.securityRoles, no session or session
was closed

请指导我。我被困得很厉害。

【问题讨论】:

  • 您是否使用com.myproject.main.domain.Juser 类进行身份验证?抛出异常时你登录了吗?

标签: spring hibernate spring-security spring-roo lazy-initialization


【解决方案1】:

休眠中的延迟初始化是它按需加载关系而不是在查询时加载的地方。 这通常更有效,因为这意味着主查询更简单。

有时您需要在会话关闭之前强制加载惰性 relp。 在这种情况下,您只需在查询完成后调用 relp 对象上的方法即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多