rich:calendar defaultLabel属性导致转换错误

时间:2012-11-06 00:24:19

标签: java jsf richfaces

使用Rich Faces Calendar组件的defaultLabel属性可以正确显示日期格式的提醒文本,就像我希望的那样。但是,当此提醒文本位于可选字段上时,就会发生转换错误,就像它尝试将提醒文本转换为日期一样。

<rich:calendar enableManualInput="true" value="#{participantSummaryManagedBean.dob}"
    id="dob" locale="US" popup="true" datePattern="MMddyyyy" defaultLabel="MMDDYYYY"
    showApplyButton="false" converterMessage="Use MMDDYYYY format">
</rich:calendar>

在RichFaces版本4.2.2.Final,4.2.3.Final和4.3.0.20121024-M2中确认

有没有办法防止或解决这个问题?

1 个答案:

答案 0 :(得分:0)

这是Richfaces的一个缺陷(https://issues.jboss.org/browse/RF-12594)。 但是,从4.3开始(特别是4.3.0.20121214-M3开启),不推荐使用defaultLabel并将其替换为标记rich:placeholder。例如:

<rich:calendar value="#{bean.dob}" id="dob" popup="true" datePattern="MMddyyyy" converterMessage="Use MMDDYYYY format" enableManualInput="true">
  <rich:placeholder value="MMDDYYYY" />
</rich:calendar>