Jack
Jack

Reputation: 6620

Failed to lazily initialize a collection of role even after adding FetchType.Lazy

I have a class called Member which has a list of Musics. When retrieving the member object, the code runs into following exception.

I need to make the list of musics as Lazy and retrieve them when required not when reading member details.

SEVERE: Servlet.service() for servlet jsp threw exception
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.myproject.model.Member.musics, could not initialize proxy - no Session

I used following codes to retrieve member.

1-

@OneToMany(fetch = FetchType.LAZY)
@Fetch(FetchMode.SELECT)
private List<Music> musics = new ArrayList<Music>();

2-

@OneToMany
@Fetch(FetchMode.SELECT)
private List<Music> musics = new ArrayList<Music>();

I am using following code which throws the exception.

    List<Member> members = new ArrayList<Member>();
    try {
        members = sessionFactory.getCurrentSession()
                .createQuery("from Member where username=?")
                .setParameter(0, username).list();
    } catch (Exception e) {
        e.printStackTrace();
    }
    return members;

Dependencies

    <!-- Hibernate Begin -->
    <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.1-api</artifactId>
        <version>1.0.0.Final</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>4.2.11.Final</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate.common</groupId>
        <artifactId>hibernate-commons-annotations</artifactId>
        <version>4.0.4.Final</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>5.2.0.Alpha1</version>
    </dependency>
    <!-- Hibernate End -->

Fullstack exception

   SEVERE: Servlet.service() for servlet jsp threw exception
        org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.myproject.model.Member.musics, could not initialize proxy - no Session
            at org.hibernate.collection.internal.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:567)
            at org.hibernate.collection.internal.AbstractPersistentCollection.withTemporarySessionIfNeeded(AbstractPersistentCollection.java:187)
            at org.hibernate.collection.internal.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:546)
            at org.hibernate.collection.internal.AbstractPersistentCollection.read(AbstractPersistentCollection.java:125)
            at org.hibernate.collection.internal.PersistentBag.iterator(PersistentBag.java:266)
            at org.apache.taglibs.standard.tag.common.core.ForEachSupport.toForEachIterator(ForEachSupport.java:348)
            at org.apache.taglibs.standard.tag.common.core.ForEachSupport.supportedTypeForEachIterator(ForEachSupport.java:224)
            at org.apache.taglibs.standard.tag.common.core.ForEachSupport.prepare(ForEachSupport.java:155)
            at javax.servlet.jsp.jstl.core.LoopTagSupport.doStartTag(LoopTagSupport.java:256)
            at org.apache.jsp.WEB_002dINF.pages.members.profile_jsp._jspx_meth_c_005fforEach_005f0(profile_jsp.java:573)
            at org.apache.jsp.WEB_002dINF.pages.members.profile_jsp._jspService(profile_jsp.java:192)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:605)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:544)
            at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:954)
            at org.apache.jasper.runtime.PageContextImpl.doInclude(PageContextImpl.java:684)
            at org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:678)
            at org.apache.tiles.request.jsp.JspRequest.doInclude(JspRequest.java:123)
            at org.apache.tiles.request.AbstractViewRequest.dispatch(AbstractViewRequest.java:47)
            at org.apache.tiles.request.render.DispatchRenderer.render(DispatchRenderer.java:47)
            at org.apache.tiles.request.render.ChainedDelegateRenderer.render(ChainedDelegateRenderer.java:68)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:259)
            at org.apache.tiles.template.InsertAttributeModel.renderAttribute(InsertAttributeModel.java:188)
            at org.apache.tiles.template.InsertAttributeModel.execute(InsertAttributeModel.java:132)
            at org.apache.tiles.jsp.taglib.InsertAttributeTag.doTag(InsertAttributeTag.java:299)
            at org.apache.jsp.WEB_002dINF.templates.members_002dbaseLayout_jsp._jspx_meth_tiles_005finsertAttribute_005f1(members_002dbaseLayout_jsp.java:212)
            at org.apache.jsp.WEB_002dINF.templates.members_002dbaseLayout_jsp._jspService(members_002dbaseLayout_jsp.java:129)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
            at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)
            at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:412)
            at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)
            at org.apache.tiles.request.servlet.ServletRequest.forward(ServletRequest.java:265)
            at org.apache.tiles.request.servlet.ServletRequest.doForward(ServletRequest.java:228)
            at org.apache.tiles.request.AbstractClientRequest.dispatch(AbstractClientRequest.java:57)
            at org.apache.tiles.request.render.DispatchRenderer.render(DispatchRenderer.java:47)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:259)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:397)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:238)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:221)
            at org.apache.tiles.renderer.DefinitionRenderer.render(DefinitionRenderer.java:59)
            at org.springframework.web.servlet.view.tiles3.TilesView.renderMergedOutputModel(TilesView.java:145)
            at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:264)
            at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1208)
            at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:992)
            at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:939)
            at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
            at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
            at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:844)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
            at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:829)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
            at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
            at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:85)
            at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
            at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
            at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
            at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)
            at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
            at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
            at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
            at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
            at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
            at java.lang.Thread.run(Thread.java:744)

        Nov 27, 2016 5:48:58 PM org.apache.catalina.core.ApplicationDispatcher invoke
        SEVERE: Servlet.service() for servlet jsp threw exception
        org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.myproject.model.Member.musics, could not initialize proxy - no Session
            at org.hibernate.collection.internal.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:567)
            at org.hibernate.collection.internal.AbstractPersistentCollection.withTemporarySessionIfNeeded(AbstractPersistentCollection.java:187)
            at org.hibernate.collection.internal.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:546)
            at org.hibernate.collection.internal.AbstractPersistentCollection.read(AbstractPersistentCollection.java:125)
            at org.hibernate.collection.internal.PersistentBag.iterator(PersistentBag.java:266)
            at org.apache.taglibs.standard.tag.common.core.ForEachSupport.toForEachIterator(ForEachSupport.java:348)
            at org.apache.taglibs.standard.tag.common.core.ForEachSupport.supportedTypeForEachIterator(ForEachSupport.java:224)
            at org.apache.taglibs.standard.tag.common.core.ForEachSupport.prepare(ForEachSupport.java:155)
            at javax.servlet.jsp.jstl.core.LoopTagSupport.doStartTag(LoopTagSupport.java:256)
            at org.apache.jsp.WEB_002dINF.pages.members.profile_jsp._jspx_meth_c_005fforEach_005f0(profile_jsp.java:573)
            at org.apache.jsp.WEB_002dINF.pages.members.profile_jsp._jspService(profile_jsp.java:192)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:605)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:544)
            at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:954)
            at org.apache.jasper.runtime.PageContextImpl.doInclude(PageContextImpl.java:684)
            at org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:678)
            at org.apache.tiles.request.jsp.JspRequest.doInclude(JspRequest.java:123)
            at org.apache.tiles.request.AbstractViewRequest.dispatch(AbstractViewRequest.java:47)
            at org.apache.tiles.request.render.DispatchRenderer.render(DispatchRenderer.java:47)
            at org.apache.tiles.request.render.ChainedDelegateRenderer.render(ChainedDelegateRenderer.java:68)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:259)
            at org.apache.tiles.template.InsertAttributeModel.renderAttribute(InsertAttributeModel.java:188)
            at org.apache.tiles.template.InsertAttributeModel.execute(InsertAttributeModel.java:132)
            at org.apache.tiles.jsp.taglib.InsertAttributeTag.doTag(InsertAttributeTag.java:299)
            at org.apache.jsp.WEB_002dINF.templates.members_002dbaseLayout_jsp._jspx_meth_tiles_005finsertAttribute_005f1(members_002dbaseLayout_jsp.java:212)
            at org.apache.jsp.WEB_002dINF.templates.members_002dbaseLayout_jsp._jspService(members_002dbaseLayout_jsp.java:129)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
            at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)
            at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:412)
            at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)
            at org.apache.tiles.request.servlet.ServletRequest.forward(ServletRequest.java:265)
            at org.apache.tiles.request.servlet.ServletRequest.doForward(ServletRequest.java:228)
            at org.apache.tiles.request.AbstractClientRequest.dispatch(AbstractClientRequest.java:57)
            at org.apache.tiles.request.render.DispatchRenderer.render(DispatchRenderer.java:47)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:259)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:397)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:238)
            at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:221)
            at org.apache.tiles.renderer.DefinitionRenderer.render(DefinitionRenderer.java:59)
            at org.springframework.web.servlet.view.tiles3.TilesView.renderMergedOutputModel(TilesView.java:145)
            at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:264)
            at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1208)
            at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:992)
            at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:939)
            at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
            at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
            at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:844)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
            at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:829)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
            at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
            at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:85)
            at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
            at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
            at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
            at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
            at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
            at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)
            at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
            at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
            at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
            at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
            at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
            at java.lang.Thread.run(Thread.java:744)

        Nov 27, 2016 5:48:58 PM org.apache.catalina.core.StandardWrapperValve invoke
        SEVERE: Servlet.service() for servlet [ft] in context with path [/myprj] threw exception [Request processing failed; nested exception is org.apache.tiles.request.render.CannotRenderException: ServletException including path '/WEB-INF/templates/members-baseLayout.jsp'.] with root cause
        org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.myproject.model.Member.musics, could not initialize proxy - no Session

Upvotes: 1

Views: 257

Answers (1)

Simon Martinelli
Simon Martinelli

Reputation: 36133

The session is closed when the JSP view is rendered and therefore you get that Exception.

Please read more about that problem and how to avoid it here: https://vladmihalcea.com/the-open-session-in-view-anti-pattern/

Upvotes: 1

Related Questions