tr:validateDateTimeRange,在将最大日期设置为当前日期时选择当前日期时的验证错误

时间:2015-09-17 07:16:34

标签: jsf myfaces trinidad

我使用Trinidad 2.1并使用tr:validateDateTimeRange在trinidad输入日期标记中设置最大日期,

<tr:inputDate id="frmCal" value="#{reportsBackingBean.reportsModel.searchFromDt}">                                      
<tr:validateDateTimeRange maximum="#{reportsBackingBean.maxDate}" />

这里reportsBackingBean.maxDate引用当前日期和日期选择器,当我选择当前日期并提交表格时,它显示验证错误“日期必须在2015年9月17日或之前”。 这是实际行为吗?我需要接受当前日期。请帮忙

1 个答案:

答案 0 :(得分:1)

MyFaces已更改了validateDateTimeRange的实现。您必须提供“小时,分钟,秒,毫秒”的最大值 试试这个:

<code>Calendar cal = Calendar.getInstance();
cal.setTime(maxDate);
cal.set(Calendar.HOUR_OF_DAY, 23);
cal.set(Calendar.MINUTE, 59);
cal.set(Calendar.SECOND, 59);
cal.set(Calendar.MILLISECOND, 59);
maxDate = cal.getTime();
</code>

Note: maxDate是您在reportsBackingBean中拥有它的变量。

https://myfaces.apache.org/trinidad/trinidad-api/tagdoc/tr_validateDateTimeRange.html

相关问题