Spring MVC Form - Vérifie si un champ contient une erreur

Spring MVC Form - Vérifiez si un champ contient une erreur

Dans cet article, nous allons vous montrer quelques exemples Springform tagpour vérifier si un champ contient un message d'erreur. Consultez l'exemple de validation de bean Spring MVC suivant:

Technologies utilisées:

  1. Printemps 4

  2. JSTL 1.2

//Bean validation
import org.hibernate.validator.constraints.NotEmpty;
public class User {

    @NotEmpty
    String name;
    //...
}

//Controller class
@RequestMapping(value = "/users", method = RequestMethod.POST)
public String saveOrUpdateUser(
    @ModelAttribute("userForm") @Valid User user,
    BindingResult result, Model model) {

    if (result.hasErrors()) {
        //...
    } else {
        //...
    }
}

1. forme: erreurs

Si le champ «nom» contient un message d’erreur, vous pouvez l’afficher viaform:errors

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>


    
    
    

2. printemps: liaison et forme: erreurs

Avecspring:bind, vous pouvez utiliser${status.error} pour vérifier si le champ «nom» contient une erreur et afficher une classe CSS différente conditionnellement.


    
    

Le message d'erreur est toujours affiché viaform:errors, mais de cette façon, vous obtenez plus de contrôles.

3. c: ensemble et forme: erreurs

Identique à l'exemple 2, à la place, vous utilisezc:set pour vérifier si le champ «nom» contient un message d'erreur.


    
        
    

    
${nameHasBindError}

Cet exemple est un peu bizarre, mais ça marche.

4. Afficher toutes les erreurs

Pour afficher tous les messages d'erreur dans le formulaire soumis, utilisezspring:hasBindErrors et bouclez les${errors.allErrors}

    
    
        
        

Sinon, utilisezpath="*"