有个父页面xxx.jsp或者是xxxAction.do先插入一条新记录
选中另一条记录后弹出新页面(yyyAction.do)修改,修改成功后关闭yyyAction.do,刷新父页面,这时候会发现又多了一条记录,就是在修改记录前插入的那条记录后来我又不断测试,在插入一条记录后不断的刷新xxxAction.do,会发现刷新N次,开始插入的那条记录就会重复插入N次,这是为什么????我不知道该怎么解决了,以前从来没遇到过,大家碰到过吗?

解决方案 »

  1.   

    你不要在刷xxxAction.do那边刷新,在jsp页面刷新啊.
    这和struts没关系吧.比如一个input.jsp,一个insert.jsp,你刷新insert.jsp就是会有数据库操作.还有formbean有自己的生命周期的,你看一下.
      

  2.   

    初始页面就是xxx.jsp,可在页面上有增删改查操作,当完成一步操作之后就会到xxxAction.do上面去,如果全是xxx.jsp的话就不是struts结构了,全是页面提交了
      

  3.   

    这个应该是重复提交的问题,不是Struts的BUG,提交动作都有这个问题。
    可以在Action里使用Token来控制这种情况的发生。
      

  4.   

    真很正常啊,每次刷新就意味着一次提交,所有的web提交都会这样的,需要控制的
      

  5.   

    那我怎么才能控制呢?Token是什么东西?小弟初学struts,还不是很熟悉,请教各位大虾了
      

  6.   

    Token指的是令牌,跟Request绑定的,他可以判断同一个请求是否又进行了一次Submit。这个能google到很多例子的。