Mam pole List<Integer> numberList14 i potrzebuję walidować tę listę na poziomie wypełniania formularza - lista musi być albo pusta, albo zawierać dokładnie 5 elementów(Jeśli użytkownik chce podać regon 9 cyfrowy, zostawia ostatnie 5 pól formularza puste. Jeśli natomiast chce podać regon 14 cyfrowy, wówczas wypełnia WSZYSTKIE 5 ostatnich pól).
Próbuję to zrobić tak:
@Capacity(min=5)
private List<Integer> numbersList14;
@Capacity to walidator, który napisałam i działa, ale wyświetla błędy TYLKO w konsoli a nie na widoku. Natomiast inne adnotacje np. @NotNull albo @PositiveOrZero wyświetlają błędy normalnie na widoku i jeszcze dodatkowo w konsoli.
Dlaczego tak się dzieje i jak to naprawić?
Proszę o pomoc
Mój @PostMapping w Kontrolerze
@PostMapping("/validate_regon")
public String submitRegon(@Valid @ModelAttribute("numbersList") Regon regon, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
System.out.println("There were errors");
bindingResult.getAllErrors().forEach(error -> {
System.out.println(error.getObjectName() + " " + error.getDefaultMessage());
});
return "regon_form";
}else {
return "/regon_validated";
}
}
Tu jest kod "@Capacity": https://pastebin.com/4MCxQ8Fa
Tu jest html(formularz): https://pastebin.com/gykRBeN8