After adding the following to struts-config.xml, error message disappears.
parameter="methodToCall"
However I still cannot avoid duplicated submission.
It seems that
<tml:link page="/AddUserProfile.jsp?method=setup">
does not create a token when the form displays at the first time.
On Wed, 25 Aug 2004 22:54:33 +0800, PC Leung <[EMAIL PROTECTED]> wrote:
> my setup DispatchAction does not show a token when the form first displays.
> When I click submit button to create record, it shows error messages
> of handler. What does needs to be done?
>
> my flow likes this
> UserMaint.jsp ---> AddUserProfileAction.java (AddUserProfile.jsp)
>
> UserMaint.jsp constructs:
> <html:link page="/AddUserProfile.jsp?method=setup">
> <bean:message key="userMaint.addUserProfile"/>
> </html:link>
>
> AddUserProfile.jsp constructs:
>
> <html:form action="/addUserProfile?method=create" focus="firstName">
> <html:hidden property="action"/>
> <html:submit><bean:message
> key="addUserProfileForm.submit"/></html:submit>
>
> AddUserProfileAction.java constructs:
>
> public final class AddUserProfileAction extends DispatchAction {
>
> public ActionForward setup (ActionMapping mapping,
> ActionForm form,
> HttpServletRequest request,
> HttpServletResponse response)
> throws Exception {
> HttpSession session = request.getSession();
> saveToken(request);
> return (mapping.getInputForward());
> }
>
> 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("Duplicated Submission"));
> }
> MessageResources messages = getResources(request);
> if (checking_is_ok) {
> ActionMessages actionMessages = new ActionMessages();
> ActionMessage actionMessage = new ActionMessage("recordAdded");
> actionMessages.add(Constants.statusLine, actionMessage);
> saveMessages (request, actionMessages);
> saveToken(request);
> return mapping.findForward("success");
> }
> if (!errors.isEmpty()) {
> saveErrors(request, errors);
> saveToken(request);
> return (mapping.getInputForward());
> }
> return mapping.findForward("failure");
> }
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]