powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Проблемы с валидацией
3 сообщений из 3, страница 1 из 1
Проблемы с валидацией
    #39391631
slavik_msc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
@Autowired
@Qualifier("sickLeaveValidator")
SickLeaveValidator sickLeaveValidator;

@InitBinder
protected void initSickLeaveBinder(WebDataBinder binder) {
	binder.setValidator(sickLeaveValidator);
}
	
@Autowired
@Qualifier("employeeValidator")
EmployeeValidator employeeValidator;
	
@InitBinder
protected void initEmployeeBinder(WebDataBinder binder) {
	binder.setValidator(employeeValidator);
}



Регистрирую в контроллере два валидатора

Класс SickLeave имеет поле Employee.

И вот при вызове падает с ошибкой
Код: java
1.
2.
3.
@RequestMapping(value = "/sickLeave/add", method = RequestMethod.GET)
	public String showAddSickLeaveForm(@ModelAttribute("employee") Employee employee, BindingResult result,
			Model model) {}



threw exception [Request processing failed; nested exception is java.lang.IllegalStateException: Invalid target for Validator [ru.med.validator.SickLeaveValidator@16111f05]: ru.med.model.Employee@18d6f3b7] with root cause

Дебагером если посмотреть то падает при
Код: java
1.
binder.setValidator(sickLeaveValidator);

класс передается Employee ему.
Что я делаю не так?
...
Рейтинг: 0 / 0
Проблемы с валидацией
    #39391637
slavik_msc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня две отдельные формы которые надо валидировать, для SickLeave и для Employee.
Но сущность Employee передается в форму SickLeave
...
Рейтинг: 0 / 0
Проблемы с валидацией
    #39391650
slavik_msc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
решено, необходимо к @InitBinder добавить ("employee") и ("sickLeave") т.е. будет
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
@Autowired
	@Qualifier("employeeValidator")
	EmployeeValidator employeeValidator;
	
	@Autowired
	@Qualifier("sickLeaveValidator")
	SickLeaveValidator sickLeaveValidator;
	
	@InitBinder("employee")
	protected void initEmployeeBinder(WebDataBinder binder) {
		binder.setValidator(employeeValidator);
	}
	
	@InitBinder("sickLeave")
	protected void initSickLeaveBinder(WebDataBinder binder) {
		binder.setValidator(sickLeaveValidator);
	}
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Проблемы с валидацией
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]