The Branch Transformation Toolkit provides
a mechanism to handle the problem of duplicate requests from HTML clients.
A duplicate request occurs when a user clicks a link that sends a request,
and, before receiving the response, clicks again on the same link. The server
receives and processes both requests, leading to the user sending the same
request twice (or more times). This can cause inconsistencies in the application,
or, even worse, problems like duplicating a critical transaction on the server
side.
You can control duplicate requests through the Java(TM) Server
Pages (JSPs). At the same time, the Struts Extensions component, which is
based on the Apache Struts Framework, also provides a way to handle duplicate
request from the application presentation server side. The Struts Action class
provides a set of methods (such as saveToken, resetToken,
and isTokenValid) to manipulate transaction tokens. Refer
to the Javadoc for details about those methods.