datetime - 2020 年的 JSF primefaces convertDateTime 模式年份不正确
问题描述
2020 年模式问题
在日历弹出窗口中,它按原样选择,但在选择时设置为 2020 年 3 月 29 日
该值在数据库中存储为 29-MAR-20
date2 的数据类型是数据库中的 DATE
但是 outputText 值显示为 03/29/ 0020。
正确的输出文本应为 03/20/ 2020
<h:form id="form">
<p:growl id="msgs" showDetail="true" skipDetailIfEqualsSummary="true" />
<h:panelGrid columns="2" cellpadding="5">
<p:outputLabel for="popup" value="Popup:" />
<p:calendar id="popup" value="#{calendarView.date2}" />
</h:panelGrid>
<p:commandButton value="Submit" update="msgs" action="#{calendarView.click}" icon="pi pi-check" />
<p:dialog modal="true" resizable="false" header="Values" widgetVar="dlg" showEffect="fold">
<p:panelGrid id="display" columns="2" columnClasses="label,value">
<h:outputText value="Popup:" />
<h:outputText value="#{calendarView.date2}">
<f:convertDateTime pattern="MM/dd/yyyy" />
</h:outputText>
</p:panelGrid>
</p:dialog>
</h:form>
web.xml
<context-param>
<param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name>
<param-value>true</param-value>
</context-param>
测试日期选择 6/27/99
该值在数据库中存储为 27-JUN-99
输出显示为预期/正确输出 - 1999 年 6 月 27 日
解决方案
推荐阅读
- javascript - 在 .txt、discord.js 中添加的最后一个文本下添加 args
- merge - 合并文件时出错: 。错误表示变量 CLAIM_NUMBER 不能唯一标识使用数据中的观察结果。我该如何解决?
- github - 将 master 合并到分支时在推送路径上运行
- php - 通过 PHP 保存在 mysql 中的文本输入,不允许 ' 和 " 作为输入
- c++ - 如何使用 CMake 一次性创建静态库和共享库?
- python - 在 dag 中重试不同的任务
- node.js - 打字稿:TypeError:无法读取未定义的属性“绑定”
- selenium - Selenium - 如何使用 xpath 使用下拉菜单定位值
- sql-server - 插入时的 DB 排序规则 VS 列排序规则
- javascript - 如何在给定半径的控制台中记录一个圆圈?