Ni55aN
@Ni55aN

Почему bindFromRequest не находит поле с camelCase названием?

Вот такие странности получились при разборе запроса и преобразовании его в объект класса с помощью bindFromRequest

public class Some {
public boolean isActive = false;
}


Form<Some> form = Form.form(Some.class).bindFromRequest();
Form.form().bindFromRequest().get("isActive");// OK, видит поле и оно true
form.isActive;// а вот это как было false, так и осталось


<input name="isActive" value="true" type="checkbox"> Is Active


Если изменить на просто "active", то все работает.
По какому тогда принципу bindFromRequest парсит и связывает имена параметров с полями? is_active как параметр при имени поля isActive в Some тоже не работает
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
Ni55aN
@Ni55aN Автор вопроса
После нескольких ошибок непонятного происхождения обнаружил, что bindFromRequest изменяет данных класса через сеттеры, ориентируясь по имени метода, а не объекта.

То есть, если ему пришел request -> isActive, то он будет искать метод setIsActive
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы