【发布时间】:2018-04-20 19:08:48
【问题描述】:
我是这样做的..
<#assign createdOn='${receipt.arPaymDate}'>
${createdOn?datetime("MMM dd yyyy HH:mm:ss 'GMT'Z")?date}
但我正在执行以下操作
无法将类似日期的值转换为字符串,因为不知道是否 它是日期(无时间部分)、时间或日期时间值。被指责的 表达式:==>receipt.arPaymDate [在模板中 “WEB-INF/ftl/receiptPdf.ftl”在第 22 行第 47 列]
谢谢你
【问题讨论】:
-
这几乎不是示例中的错误消息,因为您使用的是
?date,所以 FreeMarker 会知道它是一个仅限日期的值。 -
${createdOn?datetime(...)}期望createdOn是Date。但是,您已将其初始化为createdOn = '${...}',这使其成为String(用引号括起来的值)。试试<#assign createdOn = receipt.arPaymDate />。
标签: java freemarker