我使用rich:具有特定模式datePattern="dd/MM/yyyy"
的日历。当我尝试从日历中获取字符串值并使用SimpleDateFormat ("dd/MM/yyyy")
解析它时,我遇到了一些问题,我看到变量中的日期格式与我的预期不符:Tue Nov 22 00:00:00 EET 2011
以下是一些代码:
富:日历
<rich:calendar value="#{validateReportAction.selectedDate}"
required="true"
requiredMessage="You must select a date"
mode="ajax"
id="date"
datePattern="dd/MM/yyyy"/>
豆中的
DateFormat formatter;
Date date;
formatter = new SimpleDateFormat("dd/MM/yyyy");
date = (Date) formatter.parse(getSelectedDate());
其中getSelectedDate()
返回Tue Nov 22 00:00:00 EET 2011
但我只想要日/月/年。我怎样才能做到这一点?
答案 0 :(得分:5)
这是我能够正常运行的代码;
<rich:calendar id="scheduledDateStart"
value="#{Scheduled.scheduledDateStart}"
popup="true"
enableManualInput="#{true}"
scrollMode="client"
timeZone="#{timeZone.timeZone}"
datePattern="MM,dd,yyyy"
>
<f:convertDateTime type="date" pattern="MMMM dd, yyyy" timeZone="#{timeZone.timeZone}"/>
</rich:calendar>
答案 1 :(得分:1)
在您的代码中添加此属性,看看它是否解决了问题:
<f:convertDateTime type="date" pattern="dd/MM/yyyy" timeZone="#{timeZone.timeZone}"/>
问候!