Это немного объяснение проблемы.
@Size(min = 1, max = 50, message = "Email size should be between 1 and 50")
Теперь удалите {message = "Размер электронного письма должен быть от 1 до 50"} из тега проверки.
После этого ваша аннотация будет выглядеть следующим образом.
@Size(min = 1, max = 50)
Теперь на стороне контроллера отлаживайте метод, который вызывается при отправке формы.Ниже мой метод, который получает запрос, когда пользователь нажимает submit.
public static ModelAndView processCustomerLoginRequest(IUserService userService, LoginForm loginForm,
HttpServletRequest request, HttpSession session, BindingResult result, String viewType, Map<String, LoginForm> model)
Теперь поместите точку отладки в самую первую строку метода и отладьте аргумент "result".
BindingResult result
Во время дублирования вы найдете строку, подобную этой, в массиве кодов.
Size.loginForm.loginId
Теперь определите эту строку в вашем файле свойств и сообщение против этой строки.Скомпилируйте и выполните.Это сообщение будет отображаться всякий раз, когда эта аннотация не будет проверена.
Size.loginForm.loginId=email shouldn't be empty.
По сути, Spring создает свою собственную строку в качестве ключа к сообщению файла свойств.В приведенном выше ключе
Size(@Size) = validation annotation name
loginForm = My Class Name
loginId = Property name in LoginForm class.