I'm a bit late to this party, but we have been experiencing this for months. We
originally tried the same technique Pete suggested using - a4j eventqueues with
requestDelays - but it didn't go far enough.
What we wanted was if a user was typing or clicking, to send one request to the queue
requestDelay milliseconds after the final generated event on that queue. This would allow
a user to click a button repeatedly, but only the very last button click would be
processed. Or if a user went trigger happy on the keyboard in an input field with a
keypress event, it would only react on the last keypress event. Or we could send an input
field onchange and a button click through the queue to send only the last event. There
is a chance for lost javascript events, but since 99.9% of our pages simply submit the
form and kick off an action, ignoring the original events didn't really hurt
anything.
In order to do this we implemented a special JavaScript event queue widget that enforced
this behavior. It worked pretty well. However, we still get the "Conversation
ended, timed out or was processing another request" message so often that our users
consistently bring it up as a problem. We would still love to see JBSEAM-1832 implemented
since it helps to address the double click problem as well as the ""The
conversation ended, timed out or was processing another request" problem.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4081464#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...