Я использую тимелеаф + sprintboot для веб-приложения, и мне интересно, как я могу контролировать ошибки проверки, когда я использую объекты значений (VO).
Как видите, сущность имеет ограничение (уникальное) для одного атрибута:
@Entity
public class Company {
@Id
@GeneratedValue
Integer id = 0;
@Column(unique = true)
String code;
String name;
String address;
...
}
Но на ВО он не предназначен:
public class CompanyVO {
Integer id = 0;
String code;
String name;
String address;
...
}
следовательно, контроллер не может проверить, является ли значение повторяющимся или уникальным:
@RequestMapping(method = RequestMethod.POST)
public String set(@Valid CompanyVO companyVO, BindingResult result, Model model){
Company company = new Company();
if(result.hasErrors()){
return "company";
}
if(companyVO.getId() != 0){
company = companyRepository.findOne(companyVO.getId());
}
mapper.map(companyVO, company);
companyRepository.save(company);
return "redirect:/companies";
}
Как я могу показать ошибки проверки в представлении, когда я использую VO?