OpenSessionInViewFilter的问题(扩大session范围)!!

问题描述

这是我在web.xml里的配置 <filter> <filter-name>OpenSessionInViewFilter</filter-name> <filter-class> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter </filter-class> <init-param> <param-name>singleSession</param-name> <param-value>true</param-value> </init-param></filter><filter-mapping> <filter-name>OpenSessionInViewFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> action:里PageResult<UserInfo> pageresult = userService.queryForPages(qo);  List<UserInfo> list = pageresult.getPageresult();  System.out.println("----->>>"+list); 这个UserInfo里面 有一个属性:private List<Resource> resources = new ArrayList<Resource>();他们是1对多的关系,    问题是:  我在通过Userinfo获取resources的时候, 报错: failed to lazily initialize a collection of role: com.domain.UserInfo.resources, no session or session was closed 我上面的配置错了吗???  OpenSessionInViewFilter这个不是可以帮我把session开到action层吗》?怎么不好用????????哪里写错了?

解决方案

在 <filter-mapping> <filter-name>OpenSessionInViewFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 加上<dispatcher>FORWARD</dispatcher> <dispatcher>REQUEST</dispatcher>

时间: 2024-12-08 08:28:47

OpenSessionInViewFilter的问题(扩大session范围)!!的相关文章

spring 的OpenSessionInViewFilter简介

假设在你的应用中Hibernate是通过spring 来管理它的session.如果在你的应用中没有使用OpenSessionInViewFilter或者OpenSessionInViewInterceptor.session会在transaction结束后关闭. 如果你采用了spring的声明式事务模式,它会对你的被代理对象的每一个方法进行事务包装(AOP的方式).如下:  <bean id="txProxyTemplate" abstract="true"

spring+hibernate避免延迟加载异常

在hibernate中,延迟加载是1个非常大的优点,但有时候却给我们带来一些小麻烦,在后台查询结束后,session已经关闭,但在前台显示的时候,如果存在关联关系就会产生延迟加载异常. 解决办法是客户端每次请求就分配1个session,将请求结果返回给客户端,并完成展现后关闭session. 实现这个功能非常简单,在web.xml中加入以下配置 <filter> <filter-name>hibernateFilter</filter-name> <filter-

Filter描述

看到一篇写Filter很好的文章,转载一下: http://tianweili.github.io/blog/2015/01/26/java-filter/ 以下文字全部复制于上面链接. 本文主要详细介绍了Filter的以下几个方面内容: Filter概念介绍 Filter的用途 如何借助Filter实现拦截功能 Filter的开发步骤和配置详解 Filter链 Filter的生命周期 Filter的使用案例 使用Filter验证用户登录安全控制 防止中文乱码过滤器 Spring+Hiberna

Java中的Filter过滤器详解

Filter简介 Filter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能.例如实现URL级别的权限访问控制.过滤敏感词汇.压缩响应信息等一些高级功能. 它主要用于对用户请求进行预处理,也可以对HttpServletResponse 进行后处理.使用Filter 的完整流程:Filter 对用户请求进行预处理,接着将

lazy-Hibernate4懒加载失效 多次查询数据库

问题描述 Hibernate4懒加载失效 多次查询数据库 D-D 22:49:34,351 org.hibernate.SQL DEBUG select registrati0_.MemberId as MemberId3_1_, registrati0_.Id as Id1_, registrati0_.Id as Id4_0_, registrati0_.CreateTime as CreateTime4_0_, registrati0_.MemberId as MemberId4_0_,

struts和ajax结合报错

问题描述 struts和ajax结合报错 上网查了关于Positioned Update not supported.都是因为action中有多余的get方法,导致被搞成了json数据格式,但是我的代码里没有多余的get方法,所以不是网上哪种常见的错误.求大神 下面是我的struts配置文件 这是我的js脚本 $.post("menuitemAjax_showMenuitem.action",null,function(data){ alert(data); privilege.pFu

SSH2框架整合常见错误整理【不断更新中】

又一个问题1. 当在几种框架集成的时候,在调用HibernateDaoSupport中的某个方法时会出现: java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I 的错误.这是因为在struts2自带的antlr-2.7.2.jar包的版本较低. 需要换成antlr-2.7.6.jar.其实在项目中已经存在了antlr-2.7.6.jar这个包,现在唯一需要做的就是删除antlr-2.7.2.jar包. 选择windows---

懒加载-OpenSessionInViewFilter 的配置问题

问题描述 OpenSessionInViewFilter 的配置问题 在hibernate4使用中,出现懒加载问题 但是在web.xml文件中,配置了 还是找不到Session 请问应该怎么处理??? 解决方案 http://wenku.baidu.com/link?url=ulLU1LIJ1bGvcQdjqHA7cudRVW1XhdatyQjVoQDBnaNYXKTA6gq_ETFgdkwYlEfTUv68taNB0FWD5OAQxZ202itXqbdaroCp34gVKeHjFZy

could not initialize proxy - no Session

在SSH整合项目中出现了如下错误信息: org.hibernate.LazyInitializationException:could not initialize proxy - no Session org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:149) org.hibernate.proxy.AbstractLazyInitializer.getImplementati