我在我的 controller
中实例化了一个名为 myDate
的 java.util.Date
对象,并将它传递给我的 JSP,在那里我有一个 Joda Time在页面顶部用这个配置的 JSP 标记:
<%@taglib prefix="joda" uri="http://www.joda.org/joda/time/tags" %>
当然还有必要的 Maven
依赖项通过 POM 文件添加到项目中。
但是,当我尝试像这样从 JSP 访问 myDate
时:
<joda:format value="${myDate}" style="SM" />
我收到这个错误:
javax.servlet.jsp.JspException:
value attribute of format tag must be a
ReadableInstant or ReadablePartial, was: java.util.Date
引用documentation for the Joda Time JSP tags ,我不知道如何在此 JSP 的上下文中将我的 myDate
“转换”为 ReadableInstant
或 ReadablePartial
?
最佳答案
错误消息是不言自明的。 JodaTime 标签不接受 Java SE 标准 Date
实例,而是接受 JodaTime DateTime
实例或任何实现 JodaTime 的 ReadableInstant
或 ReadablePartial
的东西。
您需要在将其提供给 View 之前对其进行转换。
DateTime dateTime = new DateTime(date.getTime());
request.setAttribute("myDate", dateTime);
关于java - 如何在 JSP 中将 Java Date 转换为 ReadableInstant for Joda Time?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5137666/