Method calling inside setter is prefered ? [...] Is it prefered to call inside action class ?
None of the above.
First of all, you should avoid putting any kind of logic inside Getters and Setters;
On top of that, for the specific case of Validation, Struts2 provides several ways to do it properly, through the framework:
1) validate()
method
2) XML validation
3) Annotations validation
Start with n.1, when it work, eventually try one of the others.
It is important to let the framework validate your inputs in the right places and moments (across the interceptor stack), read this question to understand why.