`
sunjiyun26
  • 浏览: 1576 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

opensessioninview的困扰

阅读更多
    在整合ssh框架的时候,问题慢慢的得到解决,用spring来管理个个组建之间的关系,各个bean之间的关系,用spring来管理一系列的事情,我们可以省下来更多的功夫去处理我们的业务,然而hibernate的lazy属性加载的时候一般都会遇到session is closed 的情况,spring提供了一个过滤器,opensessioninview,这个过滤器就会在页面提交和页面打开之前,打开一个session。具体的过滤器是什么之类的话题这里不多说。
    使用opensessioninview的时候,进行增删改的时候就会报异常
Write operations are not allowed in read-only mode (FlushMode.NEVER) - turn your Session into FlushMode.AUTO or remove 'readOnly' marker from transaction definition
在网上查了很多的资料,一开始的时候认为是事物配置的问题,可是配置完以后,还是不对,大概郁闷了两三天,今天在网上找到一个办法试了试,ok。
就是在web.xml中配置过滤器的时候加上一个参数如下所示
<filter>   
       <filter-name>OpenSessionInViewFilter</filter-name>   
       <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>   
       [color=orange]<init-param>
            <param-name>singleSession</param-name>
            <param-value>false</param-value>
        </init-param>[/color]
   
        
   </filter>  
.
橙色部分为新加的
我暂时还没明白这段参数到底是什么意思,现在只是分享一下我的快乐。今天很高兴解决了这个问题。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics