У меня есть проблема с проверкой параметров, переданных методу контроллера.
Следуя предложению из учебника, я использую тот же метод контроллера для «сохранения» и «создания нового» объекта. См. пример в http://www.playframework.org/documentation/1.2.4/guide9< /а>
Итак, мой метод контроллера выглядит так:
public static void saveEntity(long l, Long itemId,
@Required(message="error.shouldspecifyname") String name,
@Required(message="error.shouldspecifycategory") String category)
Если «itemId» не является частью данных, отправляемых через HTTP-запрос, предполагается, что для него установлено значение «null».
К сожалению, похоже, что "Play" автоматически добавляет ошибку проверки к параметру "отсутствует".
При просмотре списка ошибок проверки каждый раз, когда «itemId» имеет значение «null», я получаю сообщение об ошибке Неверное значение для поля itemId.
Это задокументированное поведение? Любой способ переопределить его или «избавиться» от ошибки.
Я обрабатываю ошибки, просто используя перенаправление, например:
if(validation.hasErrors() )
{
validation.keep();
showSomePage();
}
Таким образом, ошибки отображаются «вне контекста», они генерируются. По этой причине меня беспокоит "автоматическая" ошибка.
Спасибо за любую подсказку.