Thank you Zhang. It is OK now.
On Fri, 27 Aug 2004 11:19:48 -0400, Zhang, Larry (L.) <[EMAIL PROTECTED]> wrote: > There maybe a same question in the archive, but I can simply state here again: > > if(!isTokenValid(request){ > return mapping.findForward("error_page"); > }else{ > // good token so prepare for your processing, > // but the first thing is to reset the token > resetToken(request); > // put your logic here to process your action form > return mapping.findForward("goodForwardPage"); > > > } > > -----Original Message----- > From: PC Leung [mailto:[EMAIL PROTECTED] > Sent: Friday, August 27, 2004 11:08 AM > To: Struts Users Mailing List > Subject: Re: My IsValidToken() cannot trap duplicated submission. > > I have resetted token like this in the beginning. > if (!isTokenValid(request, true)) { > > What next to check? > > On Fri, 27 Aug 2004 11:03:00 -0400, Zhang, Larry (L.) <[EMAIL PROTECTED]> wrote: > > I think the resetToken should be placed as the first place in your action that > > processes your submitted form, instead of when you are done processing the > > submitted form. > > > > -----Original Message----- > > From: Erik Weber [mailto:[EMAIL PROTECTED] > > Sent: Friday, August 27, 2004 10:57 AM > > To: Struts Users Mailing List > > Subject: Re: My IsValidToken() cannot trap duplicated submission. > > > > > > When you are done processing the submitted form, invoke "resetToken". > > > > Erik > > > > > > > > > > PC Leung wrote: > > > > >After clicking submit button and then go back previous page, > > >data is still there, click the submit button again. record will be > > >saved once more time. The IsValidToken cannot trap the duplicated > > >submission. > > > > > >Initial page: > > >http://localhost:8080/erp/AddUserProfile.jsp > > >if clicking submit button, goes to > > >http://localhost:8080/erp/addUserProfile.do?method=create > > > > > >struts-config.xml like this. > > > <action path="/addUserProfileSetup" > > > type="com.erp.quotation.AddUserProfileAction" > > > name="addUserProfileForm" > > > scope="request" > > > validate="false"> > > > <forward name="success" path="/AddUserProfile.jsp" redirect="true"/> > > > </action> > > > <action path="/addUserProfile" > > > type="com.erp.quotation.AddUserProfileDispatchAction" > > > name="addUserProfileForm" > > > scope="request" > > > validate="true" > > > parameter="method" > > > input="/AddUserProfile.jsp"> > > > <forward name="success" path="/AddUserProfile.jsp"/> > > > <forward name="failure" path="/AddUserProfile.jsp"/> > > > <forward name="cancel" path="/UserMaint.jsp"/> > > > </action> > > > > > >Initial page already shows with a token. > > > > > >Why the following DispatchAction cannot trap duplicated submission? > > > > > >public final class AddUserProfileDispatchAction extends DispatchAction { > > > public ActionForward create (ActionMapping mapping, > > > ActionForm form, > > > HttpServletRequest request, > > > HttpServletResponse response) > > > throws Exception { > > > HttpSession session = request.getSession(); > > > ActionErrors errors = new ActionErrors(); > > > if (!isTokenValid(request, true)) { > > > errors.add(ActionErrors.GLOBAL_ERROR, > > > new ActionError("error.transaction.token")); > > > } > > > > > >--------------------------------------------------------------------- > > >To unsubscribe, e-mail: [EMAIL PROTECTED] > > >For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]