LazyLoadingException VRaptor + SiteMesh

Olá.

Estou utilizando VRaptor3 com SiteMesh e estou com o seguinte problema.

Minha página principal da aplicação é decorada pelo sitemesh. Na página template que fiz, para decorar as outras, tem uma coleção de objetos que tem uma coleção lazy.
Ex. uma coleção de Pessoas, onde cada Pessoa tem varios carros

No momento de recuperar esta coleção(carros) ocorre a exception.

Como o listener do sitemesh executa sempre antes do vraptor, imagino que esteja ai o problema.

Mas ainda não cheguei a uma conclusão de como resolver.

Alguém tem idéia?

java.lang.RuntimeException: org.apache.jasper.JasperException: org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: ****, no session or session was closed
	at com.opensymphony.sitemesh.webapp.decorator.BaseWebAppDecorator.render(BaseWebAppDecorator.java:39)
	at com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:84)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
	at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:77)
	at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:144)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:479)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:940)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:874)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
	at org.eclipse.jetty.server.Server.handle(Server.java:349)
	at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
	at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:904)
	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
	at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:46)
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:545)
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
	at java.lang.Thread.run(Thread.java:619)

não rola inverter a ordem dos filtros?

Olá Lucas

Se inverter, deixando o filtro do VRaptor primeiro, o SiteMesh não decora as páginas.

Eu até tinha visto em algum blog sobre isso(filtro do VRaptor antes do SiteMesh). Acho que no do wbotelhos.

Mas mesmo assim vou dar uma pesquisada em cima disso.

Obrigado

se for só essa a coleção com problemas, deixe o relacionamento como fetch=EAGER, já que isso sempre será carregado.

@Entity
class User {
    @ManyToMany(fetch=FetchType.EAGER)
    List<Role> roles;
}

É verdade …

Valeu