笔者在配置了spring的opensessioninviewfilter之后,再次执行hibernate的save时,报了InvalidDataAccessApiUsageException,在网上查找了一下解决办法,原因是因为加了该filter之后,缺省的session是FlushMode.NEVER,这个session的模式是只读的,所以对于写操作自然就不行了,需要改变session的模式,该问题解决方法有以下两种途径:

    1、使用spring的事务管理器管理事务,如果你配置了事务管理器,请检查你的操作对应的事务传播属性是否包含有readonly属性,如果有请去掉就可以了

       

            />

       

       

           

               

                .......

           

       

       

           

           

       

    2、

    HibernateTemplate tmp=getHibernateTemplate();
    tmp.setFlushMode(HibernateTemplate.FLUSH_EAGER);  
    在调用hibernatesession之前修改session的模式,就不会出现该异常