Well, there is a subtle issue here.
Let's say this logical operation you're invoking has validation logic that is just one part of a larger unit of work -- a transaction. Transaction boundaries are typically defined at the service-layer, not the web-layer where the Spring validators are invoked as part of a validation workflow.
So I prefer for transactional validation logic to stay in my service-layer, and in that case I'd invoke the service-layer method from a action method to be called after syntactical binding and validation (perhaps with a Spring validator, or via configuration of the data binder).
But nothing says you can't put whatever you want in a Validator implementation. Just keep the point about transactions in mind.
Keith
Keith Donald
Core Spring Development Team