我有一个循环,遍历我们网站上的所有新闻.其中一个字段是date ${newsitem.value['Date']},以毫秒为单位.我想在网页上以月/日/年格式显示此日期.我认为JSTL格式标签<fmt:formatDate>会有所帮助,但我还没有成功.你知道怎么做吗?
<cms:contentaccess var="newsitem" />
<h2><c:out value="${newsitem.value['Title']}" /></h2>
// display date here
<c:out value="${newsitem.value['Text']}" escapeXml="false" />
Run Code Online (Sandbox Code Playgroud) 我有一个标签,内容如下:
<%@ tag body-content="empty"%>
<%@ attribute name="timestamp" required="true" type="java.sql.Timestamp"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<jsp:useBean id="dateValue" class="java.util.Date" />
<c:if test="${not empty timestamp}">
<jsp:setProperty name="dateValue" property="time" value="${timestamp}" />
<span title="${timestamp}"> <fmt:formatDate value="${dateValue}"
pattern="MM/dd/yyyy HH:mm" /> </span>
</c:if>
Run Code Online (Sandbox Code Playgroud)
但是我得到以下错误:
错误500:com.ibm.ws.jsp.JspCoreException:java.lang.IllegalArgumentException:无法将类型为java.sql.Timestamp的5/1/12 10:36 AM转换为long
我试图按照这个答案将时间戳转换为JSTL中的日期,所以我不会在servlet中更改任何内容.如何使用JSTL 将a转换java.sql.Timestamp为日期以便formatDate可以使用它?