Thymeleaf отклоняет нулевую дату - PullRequest
0 голосов
/ 28 ноября 2018

У меня есть этот HTML-код:

<input class="form-control col-sm-8" type="date" th:field="*{completiondate}">

и эта модель:

import java.math.BigDecimal;
import java.sql.Date;
import java.sql.Timestamp;
public class EventReport {
    private Long id;
    private Date creationdate;
    private String status;
    private Date completiondate;
    ...
}

дата завершения не является обязательным значением и иногда может быть нулевым.Когда пользователь отправляет форму сообщения, я получаю следующее

Ошибка поля в объекте 'treeTrimsEventReport' в поле 'creationdate': отклоненное значение [];

Очевидно, я не 'Не может быть ошибок, когда я выбираю значение для даты, и приложение работает нормально.Как я могу дать ноль на дату завершения без ошибок?

1 Ответ

0 голосов
/ 30 ноября 2018

Я думаю, что это ошибка привязки.

Вам необходимо указать пружине, как преобразовать данные формы, которые поступают в виде текста (String), в тип вашей модели (здесь Date).

Вы можете сделать это с помощью этой аннотации на поле в EventReport:

import org.springframework.format.annotation.DateTimeFormat
...
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date completiondate;

(изменить шаблон так, чтобы он соответствовал тому, который вы хотите показать пользователю)

Spring дает вам другой способ рассказать ему, как связывать данные.

Посмотрите справочное руководство в этой главе для всех опций: https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-initbinder

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...