jsp页面提交表单后,当刷新或者点击浏览器的后退按钮,刚才的表单会被重复提交一次,这不是我们期望的结果,为了防止页面表单重复提交,可以再JSP表单中加人<s:token/>标签,然后对Struts进行相关的配置即可。
在jsp界面加入token标签,首先要引入taglib 如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<%@ taglib prefix="s" uri="/struts-tags" %>
然后再form表单中加入token标签,如下:
<s:token></s:token>
<input name="modify" type="submit"
<action name="user_*" class="userAction" method="{1}" >
<interceptor-ref name="defaultStack"></interceptor-ref>
<interceptor-ref name="token"></interceptor-ref>
<result name="invalid.token">/reformerror.jsp</result>