Have a look at the documentation of the "dispatcherType" at http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd.
Then you can use dispatcher elements in your filter mappings ("filter-mappingType" in the same xsd) to fire your filter just for requests but not for forwards. I pressume that by "internal redirects" in your initial mail you mean forwards. Is this true? Hope this helps, Tamas On 3/13/07, Pierre Thibaudeau <[EMAIL PROTECTED]> wrote:
Yes, I believe it is 2.4. Also: Struts 1.3.5 Tomcat 6.0.9 2007/3/12, Tamas Szabo <[EMAIL PROTECTED]>: > > Hi, > > What servlet api are you using? > Is it at least 2.4? > > Tamas > > > On 3/13/07, Pierre Thibaudeau <[EMAIL PROTECTED]> wrote: > > I am trying to implement a flood control mechanism to prevent robots > > requesting pages after pages at an "inhuman" rate. > > > > My basic idea is this: > > * A FirstInFirstOut List stored in the HttpSession, that records the > time of > > the user's last 10 requests. > > * On each new request, a filter compares the current time with the time > of > > the 10th previous request. If not enough time went by, redirect to a > "delay > > page" that requires the user to press a "Continue" button. Pipe the new > > request and its time, and pipe out the 10th previous request. > > > > The problem with that design: in some cases, one single request from > the > > user will go through the filters several times because of various > possible > > internal redirects. But I only want to record the times of the requests > > coming directly from the user. > > > > Therefore my question: Is there a simple straightforward way, from the > > filter's point of view, to distinguish between a request that came from > > outside (from the user), from an internal request (one that came through > a > > redirection from ActionMapping to ActionMapping)? > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]