Java Struts2日期时间选择器显示格式问题
struts2.0.14的日期时间选择器标记面临的一个问题 问题在于struts2 datetimepicker displayformat属性 必须始终设置为tomcat服务器日期时间格式的格式 提交的值为空 更改Win 7中的日期时间设置:Java Struts2日期时间选择器显示格式问题,java,tomcat,struts2,datepicker,ognl,Java,Tomcat,Struts2,Datepicker,Ognl,struts2.0.14的日期时间选择器标记面临的一个问题 问题在于struts2 datetimepicker displayformat属性 必须始终设置为tomcat服务器日期时间格式的格式 提交的值为空 更改Win 7中的日期时间设置: 右键单击右下角的日期 单击更改日期和时间设置 更改日历设置 更改区域设置 将格式设置为英语(印度) 复制步骤 如上所述更改区域设置并重新启动tomcat服务器 现在,不要在日期时间选择器中使用任何显示格式或使用除“dd/mm/yyyy”以外的显示格式 提
*注意:如果答案是使用jquery或其他js库或升级,请不要回答。您需要使用自定义日期时间转换器 在
xwork conversion.properties
(如果没有,则创建)文件中,放置以下行:
java.util.Date=org.yourproject.common.StringToDateTimeConverter
在您的StringToDateTimeConverter
中,有这样的代码
import java.util.*
import java.text.DateFormat.*;
public class StringToDateTimeConverter extends StrutsTypeConverter{
public Object convertFromString(Map context, String[] strings, Class toClass) {
DateFormat DATETIME_FORMAT = getDateInstance(SHORT, Locale.getDefault());
if (strings == null || strings.length == 0 || strings[0].trim().length() == 0) {
return null;
}
try
{
DATETIME_FORMAT.setLenient(false);
return DATETIME_FORMAT.parseObject(strings[0]);
} catch (ParseException e) {
//throw new TypeConversionException(); <-- if you want to catch conversion error
return null;
}
}
public String convertToString(Map context, Object date) {
DateFormat DATETIME_FORMAT = getDateInstance(SHORT, Locale.getDefault());
if (date != null && date instanceof Date) {
return DATETIME_FORMAT.format(date);
} else {
return null;
}
}
}
import java.util*
导入java.text.DateFormat.*;
公共类StringToDateTimeConverter扩展了StrutsTypeConverter{
公共对象convertFromString(映射上下文,字符串[]字符串,类到类){
DateFormat DATETIME_FORMAT=getDateInstance(简称Locale.getDefault());
if(strings==null | | strings.length==0 | | strings[0].trim().length()==0){
返回null;
}
尝试
{
DATETIME_FORMAT.setLenient(false);
return DATETIME_FORMAT.parseObject(字符串[0]);
}捕获(解析异常){
//抛出新的TypeConversionException();我不明白。也许这是我的英语问题。你正在尝试获取区域日期时间格式吗?更新了帖子,我希望你现在能够重新发布:)“*注意:如果答案是使用jquery或其他js库或升级,请不要回答。”很好的免责声明。感谢您限制了我们的自由。从“日期格式不同步…如果多个线程同时访问一种格式,它必须在外部同步。”这段代码是一个等待发生的意外。