Вложенное выражение в JSP/JSTL

Я использую JSPs для представления и Spring MVC 3.0 для контроллера. В моем JSP я хочу показать текущий DateTime, для которого у меня есть следующий код...

<c:set var="dateTimeDisplayFormat" value='<spring:message code="display.dateFormat" />'/>

<c:set var="currentDateTime" 
    value='<%= new SimpleDateFormat(${dateTimeDisplayFormat}).format(new Date()) %>' 
    scope="page" />

Теперь, проблемой являются сбои JSTL для распознавания моего вложенного тега для инстанцирования SimpleDateFormat. Я хочу передать строку формата (Как получено из 'dateTimeDisplayFormat' переменной) конструктору SimpleDateFormat.

Кто-то может понравиться совету, как я пишу вложенному конструктору для SimpleDateFormat в c:set операторе выше?

Спасибо в ожидании!

8
задан Yannjoel 26 January 2017 в 11:41
поделиться

1 ответ

может получать свое значение из содержимого тега, а не из атрибута value :

<c:set var="dateTimeDisplayFormat">
    <spring:message code="display.dateFormat" />
</c:set>

<c:set var="currentDateTime" scope="page">
    <%= new SimpleDateFormat(${dateTimeDisplayFormat}).format(new Date()) %>
</c:set>    

Еще лучше, вам не нужно вообще, поскольку оба и могут сохранять свои результаты в переменных для вас:

<spring:message code="display.dateFormat" var="dateTimeDisplayFormat"/>
<fmt:formatDate pattern="${dateTimeDisplayFormat}" var="currentDateTime" scope="page"/>
16
ответ дан 5 December 2019 в 10:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: