gpt4 book ai didi

jsf - 格式化 JSF 转换值

转载 作者:行者123 更新时间:2023-12-04 05:04:59 25 4
gpt4 key购买 nike

今天我注意到 ocpsoft 有一个不错的time library适用于 JSF 2 作为转换器。其优点是您可以直接在 View 中显示的日期中使用转换器,并将其转换为字符串,告诉用户类似 6 hours ago 的内容。或 17 hours from now .我认为我最好将两者结合起来,JSF 转换日期和这个显示类似 26-03-2013 17:00 (4 hours from now) 的内容。 .我可以使用以下代码实现类似的功能:

<h:outputText value="#{task._StartDate}" style="padding:2px;">
<f:convertDateTime pattern="dd-MM-yyyy HH:mm" timeZone="GMT+1" />
</h:outputText>
<h:outputText value="#{task._StartDate}">
<f:converter converterId="org.ocpsoft.PrettyTimeConverter" />
</h:outputText>

当我想将第二个值放入括号时,我的问题就出现了。 PrettyTimeConverter只接受一个日期作为值,我不能直接在那里写括号。此外,JSF 不接受以下内容:
<h:outputFormat value="({0})">
<f:param value="#{task._StartDate}">
<f:converter converterId="org.ocpsoft.PrettyTimeConverter" />
</f:param>
</h:outputFormat>

有了这个,我有以下错误:
<f:converter> Parent not an instance of ValueHolder: 
javax.faces.component.UIParameter@1492636

关于如何避免使用特定 h:outputText 写两个括号的任何想法标签?

最佳答案

您可以将这些括号直接放在模板文本中,而无需另一个 <h:outputText> s。

<h:outputText value="#{task._StartDate}" style="padding:2px;">
<f:convertDateTime pattern="dd-MM-yyyy HH:mm" timeZone="GMT+1" />
</h:outputText>
(<h:outputText value="#{task._StartDate}">
<f:converter converterId="org.ocpsoft.PrettyTimeConverter" />
</h:outputText>)

另见:
  • Is it suggested to use h:outputText for everything?
  • 关于jsf - 格式化 JSF 转换值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15637371/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com