Validating requests should be handled in the
- web-application-server
- struts itself
- in the model
For security/authorization I would use the provided features of your webserver/web-application-server. For example: Realms when you use a tomcat.
These mechanisms can provide user and more authentication/autorication-information, are well-tested and protect your application without asking to much.
For checking the request filters of your web-application-server are a good choice.
A good choice to handle "struts-request" and change the handling are stuts-interceptors.
http://struts.apache.org/2.0.6/docs/interceptors.html
Validating the request sometimes means validating the model itself after setting the new values. There is the JSR303-Standard (http://jcp.org/en/jsr/detail?id=303) but the handling (especially of attacks) is up to you. That can be quite tricky.
So handle and find potential problems as soon as possible!