Now that I think about it, perhaps a solution to this would be a great
general-purpose configuration feature for Struts. On a
per-web-application level (e.g. in struts-config.xml), there might be an
option such as:
syncronize_requests = xxxxx
where xxxxx might be:
none - the default -- the current Struts behavior
session - syncronize requests on a per user (per-session) basis (but
allow concurrent access from different users)
application - syncronize all requests, globally
This would be to support whacko frameworks like EJB, whereby you can't
have concurrent access to Stateful Session Beans. (in that scenario I
would use "session" rather than "application" syncronization).
Note also (and this is very important) -- that if this were to be a
general-purpose Struts mechanism, I would need to be able to tie into it
from my custom tag library, as well as my Action classes, since tags
might also access an EJB bean.
Regards,
Bryan