Exemple de zone de texte Spring MVC
Dans Spring MVC, utilisez<form:textarea /> pour afficher un champ HTML textarea. Par exemple,
Il rendra le code HTML suivant
Dans ce didacticiel, nous vous montrons comment utiliser la balise de formulaire de Spring «textarea» àrender a HTML textarea pour stocker les «address». De plus, ajoutez un validateur pour vous assurer que la texarea n'est pas vide lors de la soumission du formulaire.
1. Manette
UnSimpleFormController pour gérer la valeur du formulaire.
Fichier: TextAreaController.java
package com.example.customer.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
import com.example.customer.model.Customer;
public class TextAreaController extends SimpleFormController{
public TextAreaController(){
setCommandClass(Customer.class);
setCommandName("customerForm");
}
@Override
protected ModelAndView onSubmit(HttpServletRequest request,
HttpServletResponse response, Object command, BindException errors)
throws Exception {
Customer customer = (Customer)command;
return new ModelAndView("CustomerSuccess","customer",customer);
}
}
2. Modèle
Un objet Client pour stocker la valeur de la zone de texte.
Fichier: Customer.java
package com.example.customer.model;
public class Customer{
String address;
//getter and setter methods for address
}
3. Validateur de formulaire
Créez une classe de validateur de formulaire et utilisez la classeValidationUtils pour vous assurer que l '«adresse» n'est pas vide. Sinon, récupérez le message «required.address» du lot de ressources correspondant (fichier de propriétés).
Fichier: CustomerValidator.java
package com.example.customer.validator;
import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;
import com.example.customer.model.Customer;
public class CustomerValidator implements Validator{
@Override
public boolean supports(Class clazz) {
//just validate the Customer instances
return Customer.class.isAssignableFrom(clazz);
}
@Override
public void validate(Object target, Errors errors) {
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "address",
"required.address", "Field name is required.");
}
}
Fichier: message.properties
required.address = Address is required!
4. View
Une page JSP pour utiliser la balise de formulaire de Spring «textarea» pour rendre une zone de texte HTML et mettre des styles CSS pour mettre en évidence le message d'erreur.
Fichier: CustomerForm.jsp
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
Spring's form textarea example
Address :
Si le formulaire est soumis, restituez la page réussie et affichez la valeur de la zone de texte soumise.
Fichier: CustomerSuccess.jsp
Spring's form textarea example
Address : ${customer.address}
5. Configuration de Spring Bean
Liez le tout ~
/WEB-INF/pages/ .jsp
6. Demo
Accéder à la page -http://localhost:8080/SpringMVCForm/textarea.htm

Si la valeur de la zone de texte est vide lors de la soumission du formulaire, affichez et mettez en surbrillance le message d'erreur.

Si le formulaire est soumis avec succès, affichez simplement la valeur de la zone de texte soumise.

Télécharger le code source
Téléchargez-le -SpringMVCForm-TextArea-Example.zip (9 Ko)