之前我的一篇博客中:
写到过如何将后台日期类型转换在前台显示,今天我在用其中的第四种方法
<fmt:formatDate value="&{diary.releaseDate}" type="date" pattern="yyyy-MM-dd"/>
却出现:Unable to convert string "&{diary.releaseDate}" to class "java.util.Date" for attribute "value": Property Editor not registered with the PropertyEditorManager异常
原因在于虽然实体diary中releaseDate是设置为Date类型,但&{diary.releaseDate}取出来是String类型,无法转换为Date类型
如下将能正常输出
<fmt:formatDate value="<%=new Date() %>" pattern="yyyy-MM-dd"/>
解决办法是,可先将String解析为Date 然后再格式化Date
<fmt:parseDate value="${entity.ctime}" var="date" pattern="yyyyMMddHHmm"/> <fmt:formatDate value="${date}" pattern="yyyy-MM-dd HH:mm" />