我的下一个Java模型豆(其中不仅包含以毫秒为单位的日期也是一个时区)JSF 2:F:convertDateTime内丰富:dataTable的
public class Device {
private Calendar lentDate;
// getters and setters
}
和下一个XHTML页面片段
<rich:dataTable value="#{tagBean.devices}" var="device">
<rich:column>
<h:outputText value="#{device.lentDate.time}">
<f:convertDateTime pattern="dd.MM.yyyy" timeZone="#{device.lentDate.timeZone}"/>
</h:outputText>
</rich:column>
</rich:dataTable>
但的timeZone属性没有得到device.lentDate.timeZone值。看起来像是因为当f:convertDateTime标记被渲染时,设备变量尚不可用。
是否有可能强制JSF在设备变量可用后呈现f:convertDateTime标记?或者在这种情况下为每个设备正确设置timeZone的唯一方法是创建一个自定义日期/时间转换器?
谢谢。
您可以在支持bean与参数_device_基于所属时区的返回日期创建功能。在'h:outputText'中使用这个函数。 –
谢谢你的解决方案! – yaskovdev