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

Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL)..

阅读更多
在保存时候总是弹出对话框:  Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition.
  大概意思翻译了下是:只读模式下(FlushMode.NEVER/MANUAL)写操作不被允许:把你的Session改成FlushMode.COMMIT/AUTO或者清除事务定义中的readOnly标记。


  解决方案:
     在 web.xml配置里添加
<filter>
   <filter-name>OpenSessionInViewFilter</filter-name>
   <filter-class>
    org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
   </filter-class>
   <init-param>
    <param-name>sessionFactoryBeanName</param-name>
    <param-value>sessionFactory</param-value>
   </init-param>
   <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>
</filter>
     。。。。


<filter-mapping>
   <filter-name>OpenSessionInViewFilter</filter-name>
   <url-pattern>*.do</url-pattern>
</filter-mapping>


0
0
分享到:
评论
1 楼 yzz9i 2011-01-12  
经过测试 这样确实是可以解决弹出的这个问题.  但是 没有了事务,使劲保存 等操作都
不可以。  遇上还是把
<init-param>
    <param-name>sessionFactoryBeanName</param-name>
    <param-value>sessionFactory</param-value>
   </init-param>
   <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>
这段删了 换成了 在 applicationContext.xml 织入:
<aop:config>
  <aop:advisor advice-ref="次要事务属性id" pointcut="execution(* com.service.*.*(..))"/>
</aop:config>
  就 解决了   。还是这样好些解决的

相关推荐

Global site tag (gtag.js) - Google Analytics