<s:token > </s:token>
在jsp頁(yè)面的form里面加上 注意:要先訪問(wèn)到這個(gè)jsp頁(yè)面,來(lái)給token初始的值,這樣當(dāng)你提交的時(shí)候,才能匹配上
剛進(jìn)入jsp頁(yè)面的時(shí)候,struts2會(huì)生成一個(gè)tokenid的字符串,然后存入session。當(dāng)點(diǎn)擊提交按鈕的時(shí)候,struts2把頁(yè)面 的tokenid回傳到struts2的攔截器里,看看是否一樣,一樣的話,就在給tokenid賦個(gè)新值,然后傳回表單,當(dāng)再點(diǎn)擊提交或者刷新的時(shí) 候,又執(zhí)行上面的過(guò)程,結(jié)果session中的tokenid和表單中的不一樣,就出錯(cuò)
<action name="xxx" class="xxx">
<interceptor-ref name="token"/>
<interceptor-ref name="defaultStack"/>
<result name="invalid.token" type="dispatcher" >/jsp/repeatRefresh.jsp</result>
<result name="input" type="dispatcher" >/jsp/Person.jsp</result>
<result name="success" type="dispatcher" >/jsp/Person.jsp</result>
</action>
<interceptor-ref name="token"/>
<interceptor-ref name="defaultStack"/>
<result name="invalid.token" type="dispatcher" >/jsp/repeatRefresh.jsp</result>
<result name="input" type="dispatcher" >/jsp/Person.jsp</result>
<result name="success" type="dispatcher" >/jsp/Person.jsp</result>
</action>
上面的invalid.token默認(rèn)是不一致時(shí)候的result,這樣就返回到repeatRefresh.jsp頁(yè)面,在這里給出提示,比如:不能重復(fù)提交等等
別忘了在頁(yè)面的form里加上 <s:token > </s:token>,可以查看源代碼,就能找到tokenid的值