您的位置:首页 > 编程语言 > Java开发

Struts2 token的使用,避免表单重复提交

2012-12-26 14:45 337 查看
防止表单重复提交的标签<s: token />在jsp页面的form里加上,在jsp页面加载时<s: token />产生一个GUID(Globally Unique Identifier,全局唯一标识符).

将GUID放到会话(session)中,在执行action之前,拦截器将会话token与请求token比较,如果两者相同,则将会话中的token删除并往下执行,否则向actionErrors加入错误信息.

struts2配置文件

<action name="xxx" class="xxx">

<interceptor-ref name="token"/> <!-- 拦截器 -->

<interceptor-ref name="defaultStack"/>

<result name="invalid.token" type="dispatcher" >/jsp/repeatRefresh.jsp</result> <!-- 会话token与请求token不一致时的result -->

<result name="input" type="dispatcher" >/jsp/input.jsp</result>

<result name="success" type="dispatcher" >/jsp/success.jsp</result>

</action>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: