Struts offre deux principaux mécanismes de validations des données saisies dans les formulaires:
Par validation, on entend deux choses :
- une validation dite de contrôle de surface ou qualitative : il s'agit de vérifier que les données saisies sont bien dans la forme attendue (ex : une donnée numérique ne contient que des chiffres).
- une validation sémantique : il s'agit de vérifier que la valeur saisie est bien celle qui est attendue par le système (ex : un numéro de carte bleue valide).
Bien que les deux systèmes sont à même de faire les deux, on utilise usuellement le plug-in
Validator pour les controles de surface, puisqu'il ne nécéssite pas d'aller-retour entre le client et le serveur, et la méthode
validate() des
ActionForms pour la validation sémantique.