Ho qui una domanda concettuale molto ingenua per chiarimenti. Nella mia app Attualmente sto usando JSR 303 Hibernate Validator per la validazione del modello di dominio con @NotBlank e @NotNull annotazioni, come il controllo nome utente, password eccUtilizzo del validatore JSR-303 invece di Spring Validator
public class Admin {
private Long id;
@NotBlank(message = "Username should not be null")
private String username;
@NotBlank(message = "Username should not be null")
private String password;
...
Ma per convalidare la logica del dominio, come nome utente esistente, I sto ancora utilizzando l'interfaccia
@Component
public class AdminValidator implements Validator {
...
@Override
public void validate(Object target, Errors errors) {
Admin admin = (Admin) target;
if (usernameAlradyExist())){
errors.rejectValue("username", null, "This user already exist's in the system.");
}
}
Validator Spring Nel controllore che sto usando sia
@RequestMapping(value = "/register", method = RequestMethod.POST)
public String register(@Valid @ModelAttribute("admin") Admin admin, BindingResult bindingResult,) {
validator.validate(admin, bindingResult);
if (bindingResult.hasErrors()) {
return REGISTER_ADMIN.getViewName();
}
e 'possibile solo per usare Hibernate Validator e non un tutti usano Spring Validator per validare la logica di dominio?
Grazie, questo è quello che stavo cercando :-) – tintin
@tintin: Felice di poter aiutare :) – xyz