2013-07-19 4 views
2

В моей форме вставки/изменения у меня есть кнопка submit, чтобы сохранить изменения в атрибуте моей модели, в то время как я обрабатываю команду delete простой ссылкой.Как обрабатывать/отображать ошибки без ModelAttribute в Spring MVC?

Теперь я хотел бы показывать ошибки удаления так же, как я показываю глобальные ошибки для отправки формы, но, похоже, я не могу использовать BindingResult без ModelAttribute в моем методе контроллера.

Для ясности, мой код выглядит так:

@RequestMapping(value = "/delete") 
public String deleteJob(Integer jobId, BindingResult result) { 

    // DELETE BY ID 

    return "myView"; 
} 

Но, как и ожидалось, я получаю это исключение:

java.lang.IllegalStateException: An Errors/BindingResult argument is expected to be immediately after the model attribute argument in the controller method signature

Есть ли способ сделать что-то подобное?

ответ

0

Вам не нужно BindingResult result, что вы можете сделать, это создать свои ошибки и добавить их в объект Errors. и вернуть его на ваш вид

+0

Вы имеете в виду 'org.springframework.validation.Errors' или пользовательский объект' Errors'? – davioooh

+0

Ошибка объекта, но это интерфейс, вам придется его реализовать –

-1

Что вы можете сделать, это добавить атрибут объекта домена - например, «удалить», привязать его к скрытому полю в форме и установить значение «true», когда пользователь нажимает кнопку удаления а затем отправить его на сервер, который будет обрабатываться как атрибут модели. Все проверки валидации и результат привязки будут вести себя так, как ожидалось.

Смежные вопросы