关闭

spring出现 Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marke问题

108人阅读 评论(0) 收藏 举报
分类:

                 本人在做系统的第二版开发的时候由于由于在web.xml 里面配置了org.springframework.orm.hibernate4.support.OpenSessionInViewFilter导致新增加的访问路径无法进行写入操作。

通过百度网上有也由许多人遇到相似的问题都是通过修改web.xml 对org.springframework.orm.hibernate4.support.OpenSessionInViewFilter的配,通过添加

 <init-param> 
            <param-name>singleSession</param-name> 
            <param-value>true</param-value>            
        </init-param> 
        <init-param> 
        <param-name> flushMode </param-name> 
   <param-value>AUTO </param-value>         
        </init-param> 

按照网上提供的方法我对web.xml 进行了修改。然而还是不行。后来通过查找资料发现是spring的过滤器加session的FlushMode设置为只读,至于为什么我在web,xml 的配置无法生效依然没有明白。不过知道原因后就可以自动对sessionflushMode 进行修改。

@Transactional(readOnly = false)
	public void saveDongTai(RZDongTai rz) {
		Session session=this.getHibernateTemplate().getSessionFactory().getCurrentSession();
		session.setFlushMode(FlushMode.AUTO);
		Transaction tran=session.beginTransaction();
		session.save(rz);
		tran.commit();
		//this.getHibernateTemplate().save(rz);
	}
直接就通过。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:970次
    • 积分:133
    • 等级:
    • 排名:千里之外
    • 原创:13篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条