编程语言
首页 > 编程语言> > java-JSF Spring JPA Hibernate:在渲染视图时保持entitymanager处于活动状态?

java-JSF Spring JPA Hibernate:在渲染视图时保持entitymanager处于活动状态?

作者:互联网

Spring&的全新内容Java开发,但正在与一些经验丰富的开发人员一起为一个类工作.我相信我们正在使用Spring MVC作为我们的Web层(但是我是C#的人,所以在这方面我可能会误会).我们有一个视图来获取带有延迟加载属性的对象-非常简单的东西.但是,当我在JSF视图中调用这些属性之一时,会出现此错误:

failed to lazily initialize a collection of role: xxxxxxxx, 
  no session or session was closed

这使我认为休眠会话关闭得太早了.有没有办法让一个entitymanager在请求期间(包括在将模型发送到视图进行渲染之后)保持有效?

解决方法:

Spring提供了OpenEntityManagerInViewFilterOpenEntityManagerInViewInterceptor.它们是OpenSessionInView (OSIV) paradigm的EntityManager版本

标签:jpa,hibernate,jsf,spring,java
来源: https://codeday.me/bug/20191210/2100725.html