when you put validation="true" every time you hit that action it will validate the backing form configured. So if you have a dispatch action with methods like setup, add, edit, delete, or what have you, you're still hitting that action. When you hit the action
struts looks at the config to which action you're going to. It'll say oh this action is MyDispatchAction, then it sees that validation is set to true and tries to validate it, no matter what method it's going to dispatch to.
When using dispatch action I normally just call the form validation from the methods that need to be validated.
the struts validation flag is set to the action, not each individual method.
You could get tricky and override the dispatch method look for the name of the method and validate it if it falls within the methods you want to validate, if you do that, look at the source code to dispatch action and see what it's doing and you'll get the idea.