Nie można zaimplementować przechwytywacza tokena Struts 2 z hiperłączem

Próbowałem zaimplementować przechwytujący token za pomocą<s:url .. tag, ale pokazuje błąd podczas pierwszego kliknięcia. to znaczyThe form has already been processed or no token was supplied, please try again.

Chcę zaimplementować ten przechwytywacz, ponieważ jeśli użytkownicy usunęli już wiersz i ponownie odświeżyli stronę, to ta sama akcja nie powinna się powtórzyć.

<s:url id="linkdelete" action="DeleteLatestUpload.action" namespace="/admin/insecure/upload">
     <s:param name="latestUploadId" value="latestUploadId"></s:param>
     <s:token name="token"></s:token>
</s:url> 
<a href='<s:property value="#linkdelete"/>' style="color: white;text-decoration:  none;" class="delbuttonlink">Clear current Uploads</a>

i mójstruts.xml:

 <action name="DeleteLatestUpload" class="v.esoft.actions.UploadExcel" method="deleteUploads">                   
     <interceptor-ref name="token"></interceptor-ref>
     <interceptor-ref name="basicStack"></interceptor-ref>  
     <result name="success" type="tiles"> uploadforward</result>
     <result name="invalid.token" type="tiles">uploadforward </result>
 </action>

questionAnswers(2)

yourAnswerToTheQuestion