Liferay 日期输入显示错误的日期

Liferay date-input displays wrong date

我正在使用 Liferay 7.1 我有以下 liferau-ui:input-date 对象,我想预先 select 一个日期:

<%
    final LocalDate today = LocalDate.now(ZoneId.systemDefault());
%>

<liferay-ui:input-date
    dayValue="<%= today.getDayOfMonth()%>"
    monthValue="<%=today.getMonth().getValue()%>"
    yearValue="<%= today.getYear()%>"
</liferay-ui:input-date>

当我直接在 JSP 上输出 today 的值时,我得到了今天的正确日期:3 12 2018.

元素呈现时,select输入了错误的日期:01/03/2019taglibdocs 中没有任何我认为可以提供帮助的进一步记录。

我该如何解决这个问题?

问题是月值。在 Java 中,它是 1-12,liferay 日期选择器是 0-11。 为了显示正确的月份,我从月份值中减去 1。这不是一个优雅的解决方案,但我找不到更好的方法。

<liferay-ui:input-date
    dayValue="<%= today.getDayOfMonth()%>"
    monthValue="<%=today.getMonth().getValue() - 1 %>"
    yearValue="<%= today.getYear()%>"
</liferay-ui:input-date>

这将呈现 12/03/2018