【问题标题】:how to format jsf 2.0 <f:selectItems/> with date value from List如何使用列表中的日期值格式化 jsf 2.0 <f:selectItems/>
【发布时间】:2010-05-30 13:12:55
【问题描述】:

我正在使用 jsf 2.0 开发应用程序,用户必须从可能的选择列表中选择(使用单选按钮)日期。日期列表是 List 类型的托管 bean 属性。我正在使用 facelets

<h:selectOneRadio value="#{banner_backing.selectedInterval}" border="1" layout="pageDirection">
        <f:selectItems value="#{banner_backing.avaliableIntervals}" var="interval">                    
                </f:selectItems>
</h:selectOneRadio>

显示单选按钮。

这是我的问题: 如何以默认模式(2010 年 5 月 28 日 00:00:00 CEST)以外的模式格式化 selectItems 标签和值,例如“HH:mm:ss dd/MM/yyyy”?

【问题讨论】:

标签: java datetime jsf formatting jsf-2


【解决方案1】:

不确定是否可以使用 jsf 在 xhtml 中进行转换。 一种方法是在 bean 中使用 SimpleDateFormat 类并在 bean 本身中格式化值并将其添加到列表 avaliableIntervals

http://java.sun.com/javase/6/docs/api/java/text/SimpleDateFormat.html

【讨论】:

  • 谢谢回复 :) 看起来我必须这样做。我很惊讶缺少这个功能,即使是旧的 struts 也有它
【解决方案2】:

应该这样做。

<h:selectOneRadio value="#{banner_backing.selectedInterval}" border="1" layout="pageDirection">
     <f:convertDateTime type="date" dateStyle="short"/>
     <f:selectItems value="#{banner_backing.avaliableIntervals}" var="interval"/>                    
</h:selectOneRadio>

您几乎可以使用 pattern="" 对日期执行任何操作。

【讨论】:

    【解决方案3】:

    使用支持 bean 方法返回一个 SelectItems 列表,从允许的 Dates 列表中填充。在创建SelectItems 列表时根据需要格式化日期。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-22
      • 2012-12-12
      • 1970-01-01
      • 1970-01-01
      • 2011-06-11
      • 1970-01-01
      • 2020-05-23
      相关资源
      最近更新 更多