Thymeleaf-рекомендуется проверять значение NULL при форматировании (т. е. даты)

у меня есть код шаблона Thymeleaf к дата. Бывают случаи, когда эта дата будет null в возвращаемом объекте. Каков наилучший способ проверить null в Thymeleaf в этой ситуации? В настоящее время шаблон выдает следующую ошибку:

Caused by: java.lang.IllegalArgumentException: Cannot apply format on null
    at org.thymeleaf.util.Validate.notNull(Validate.java:37)
    at org.thymeleaf.util.DateUtils.format(DateUtils.java:182)
    at org.thymeleaf.expression.Dates.format(Dates.java:164)

2 ответов


вы можете использовать служебный класс объектов thymeleafs объекты или проверьте объект перед его передачей в шаблон.

Я предпочитаю превалирование, поскольку вы обычно не хотите взломать свой шаблон. кроме того, таким образом, вы держите свои данные слабо связанными с представлением.


вы также можете использовать условное выражение для своего объекта, так что метод форматирования применяется только в том случае, если объект не равен null:th:text="${myDate} ? ${#dates.format(myDate,...)}"

обратите внимание, что в выражении выше нет части "else", и в этом случае выражение просто вернет null (делая