Я использую Тип календаря в Java, и я хотел бы отобразить отформатированную дату в JSTL.
Я пробовал:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<fmt:parseDate var="date" type="date" dateStyle="short" value="${photo.dateCreated}" />
<c:out value="${data}" />
Но это не работает:
java.text. ParseException: дата Unparseable
Может формат JSTL Calendar
ввести?
Нет, он может форматировать только тип java.util.Date
, поскольку он использует DateFormat # format ()
под капотами. Используйте Calendar # getTime ()
, чтобы получить его из Calendar
.
<fmt:formatDate value="${photo.dateCreated.time}" type="date" dateStyle="short" />
Обратите внимание, что для этого вам понадобится fmt: formatDate
, а не fmt: parseDate
. Форматирование - это преобразование объекта Date
в удобочитаемую строку даты, а синтаксический анализ - это преобразование удобочитаемой строки даты в объект Date
.