Spring validation (Size.attendee.name means this validation is only for the name field in the attendee object)
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.0.3.Final</version>
</dependency>Size.attendee.name=Name must be between {2} and {1} characters
Email=Not a valid email address
NotEmpty=Field cannot be left blank
attendee.name=Enter Name
attendee.email.address=Enter Email Address
attendee.phone=Enter Phone<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Attendee Page</title>
<style type="text/css">
.error{
color: #ff0000;
}
.errorblock{
color: #000;
background-color: #ffEEEE;
border: 3px solid #ff0000;
padding: 8px;
margin: 16px;
}
</style>
</head>
<body>
<a href="?language=en">
English
</a>
<a href="?language=es">
Spanish
</a>
<form:form commandName="attendee">
<form:errors path="*" cssClass="errorblock" element="div"/>
<label for="textinput1"><spring:message code="attendee.name" />:</label>
<form:input path="name" cssErrorClass="error"/>
<form:errors path="name" cssClass="error" />
<br>
<label for="textinput2"><spring:message code="attendee.email.address"/>:</label>
<form:input path="emailAddress" cssErrorClass="error"/>
<form:errors path="emailAddress" cssClass="error" />
<br>
<input type="submit" class="btn" value="Enter Attendee" />
</form:form>
</body>
</html>package com.pluralsight.model;
import javax.validation.constraints.Size;
import org.hibernate.validator.constraints.Email;
import org.hibernate.validator.constraints.NotEmpty;
import com.pluralsight.view.Phone;
public class Attendee {
@Size(max=30, min=2)
private String name;
@NotEmpty @Email
private String emailAddress;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmailAddress() {
return emailAddress;
}
public void setEmailAddress(String emailAddress) {
this.emailAddress = emailAddress;
}
}