Выражение Thymeleaf [#temporals.format($ {event.eventStart}, 'pattern')] @20: EL1043E: Неожиданный токен. Ожидалось 'rparen())', но было 'lcurly({)'

event.eventStart является объектом OffsetDateTime.

Добавлено в POM

<dependency>
            <groupId>org.thymeleaf.extras</groupId>
            <artifactId>thymeleaf-extras-java8time</artifactId>
            <version>3.0.4.RELEASE</version>
</dependency>

Добавлен Java8TimeDialect в TemplateEngine

 final SpringTemplateEngine templateEngine = new SpringTemplateEngine();
        templateEngine.addDialect(new Java8TimeDialect());

Ожидаемый - в этой строке отображается время в моем электронном письме в формате.

<span th:text="${#temporals.format( ${event.eventStart} , 'yyyy-MM-dd HH:mm:ss ZZZZ')}"></span>

Актуально -

Expression [#temporals.format( ${event.eventStart} , 'yyyy-MM-dd HH:mm:ss ZZZZ')] @20: EL1043E: Unexpected token. Expected 'rparen())' but was 'lcurly({)'

1 ответ

Вы не можете гнездиться ${...}выражения. Просто удалите лишний, который у вас есть посередине. Например:

th:text="${#temporals.format(event.eventStart, 'yyyy-MM-dd HH:mm:ss ZZZZ')}"
Другие вопросы по тегам