一,在页面加上<s:token/>
<form action="${pageContext.request.contextPath }/validator/loginAction_login.action" method="post">
<s:token />
<s:text name="prompt.username"/>:<input type="text" name="username" value="${username }"/><s:fielderror fieldName="username"/><br/>
<s:text name="prompt.tel"/>:<input type="text" name="tel" value="${tel }"/><s:fielderror fieldName="tel"/><br/>
<input type="submit" value="<s:text name='button.confirm'/>"/>
</form>
二,在struts.xml中配置拦截器 token(是struts2内部的拦截器)
<action name="loginAction_*" class="hwt.action.ValidatorAction" method="{1}">
<interceptor-ref name="token">
<param name=”includeMethods”>方法名(不需要actionName)</param>
</interceptor-ref>
-- 增加一个token拦截器,如果使用了自定义拦截器,需要放到defaultStack后面
<result name="invalid.token">/showMsg.jsp</result>--错误输出页面
<result name="input">/login.jsp</result>
<result name="ok">/show.jsp</result>
</action>
本文介绍如何在Struts2框架中使用内置拦截器token防止表单重复提交,包括在页面上添加token验证标签及在配置文件中设置拦截器。
144

被折叠的 条评论
为什么被折叠?



