On 25-05-2009 at 12:13, Michael Day wrote:
> I would like to prevent optimistic locking exceptions when a user  
> double-clicks a link or double-submits a form.  Is there anything  
> wrong with accomplishing this by synchronizing the HTTP session in my  
> ActionBean as shown below?
> 
>      public Resolution execute() {
>          synchronized (getContext().getRequest().getSession()) {
>              ...
>          }
>      }

Double-clicking would not cause a problem, as it's still a single action.
However, it is possible that a users is just a tad too slow to double-click:
the browser then sees it as two single-clicks, and submits the form twice.

Personally, I've solved this with a bit of javascript in the onsubmit
attribute of the form, and a bit of page-wide javascript (it can be made
form-specific):

var alreadySybmitted = false;
function maySubmit()
{
        var result = !alreadySybmitted;
        alreadySybmitted = true;
        return result;
}


<stripes:form ... onsubmit="return maySubmit();">
        ...
</stripes:form>

> 
> 
> ------------------------------------------------------------------------------
> Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
> is a gathering of tech-side developers & brand creativity professionals. Meet
> the minds behind Google Creative Lab, Visual Complexity, Processing, & 
> iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
> Group, R/GA, & Big Spaceship. http://www.creativitycat.com 
> _______________________________________________
> Stripes-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/stripes-users

-- 
   ,-_  Oscar Westra van holthe - Kind      http://www.xs4all.nl/~kindop/
  /() )
 (__ (  A: Because people normally read from top to bottom.
=/  ()  Q: Why is top-posting such a bad thing?

------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
Group, R/GA, & Big Spaceship. http://www.creativitycat.com 
_______________________________________________
Stripes-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-users

Reply via email to