程序人生  
我们站在同一起跑线上,让我们共同努力,共同奋进,愿您的人生因程序而美好!
日历
<2025年7月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789
统计
  • 随笔 - 0
  • 文章 - 38
  • 评论 - 8
  • 引用 - 0

导航

留言簿(2)

文章分类

文章档案

常用Web 站点

搜索

  •  

最新评论

 

    在使用webwork过程中遇到了这样一个问题:
 
    我的domain model类包含了一个属性java.util.Date beginTime; webwork使用的model driven的方式。界面上需要显示格式是:yyyy-MM-dd HH:mm,但是用<ww:property value="beginTime"/>似乎webwork默认的转换格式是yy-MM-dd,怎样才能得到yyyy-MM-dd HH:mm呢?

    写一个convert:

代码

package com.eruite.webapp.webwork;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;

import com.opensymphony.webwork.util.WebWorkTypeConverter;
import com.opensymphony.xwork.XworkException;

public class DateConverter extends WebWorkTypeConverter {
 private static final SimpleDateFormat sdf = new SimpleDateFormat(
   "yyyy-MM-dd HH:mm");

 public Object convertFromString(Map context, String[] values, Class toClass) {
  return doConvertToDate(values[0]);
 }

 public String convertToString(Map context, Object o) {
  String result = null;
  if (o instanceof Date) {
   result = sdf.format(o);
  }
  return result;
 }

 private Date doConvertToDate(Object value) {
  Date result = null;

  if (value instanceof String) {
   try {
    result = sdf.parse((String) value);
   } catch (ParseException e) {
    throw new XworkException("Could not parse date", e);
   }
  }
  return result;
 }
}

    可以添加默认的xwork-default-conversion.properties 
        java.util.Date=com.eruite.webapp.webwork.DateConverter 
    也可以写在Domain Model的converter配置里面,如Examination-conversion.properties
        beginTime = com.eruite.webapp.webwork.DateConverter

posted on 2007-12-02 20:29 蔡华林 阅读(485) 评论(0)  编辑  收藏 所属分类: webwork

只有注册用户登录后才能发表评论。


网站导航:
 
 
Copyright © 蔡华林 Powered by: 博客园 模板提供:沪江博客