我得到了錯誤http://jira.codehaus.org/browse/JACKSON-288,但它表示應該在版本1.6.2中修復該錯誤。@XmlJavaTypeAdapter不起作用
我指的是大量的線程,像,
Jersey JSON and Date
How to convert Date(ActionScript 3) to java.util.Date through a xml?
我試過版本1.12,1.14,1.17.1,都不會在我身邊的作品。
@XmlRootElement(name="info")
@XmlAccessorType(XmlAccessType.NONE)
public class InfoVO {
private int infoId;
@XmlElement
@XmlJavaTypeAdapter(DateAdapter.class)
private Date createTime;
//...get/set
}
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.ws.rs.WebApplicationException;
import javax.xml.bind.annotation.adapters.XmlAdapter;
public class DateAdapter extends XmlAdapter<String, Date> {
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@Override
public String marshal(Date v) {
return dateFormat.format(v);
}
@Override
public Date unmarshal(String v) {
try {
return dateFormat.parse(v);
} catch (ParseException e) {
throw new WebApplicationException();
}
}
}
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>jsr250-api</artifactId>
<version>1.0</version>
</dependency>
但該DateAdapter不能被調用,並得到了一個例外,
2013年6月12日11:11:13.363:警告::/XA /信息/保存/ 12121 :org.codehaus.jackson.map.JsonMappingException:無法從String值構造java.util.Date的實例'2013-06-08 08:00:00':不是有效的表示(錯誤:無法解析日期「2013 -06-08 08:00:00「:與任何標準格式不兼容(」yyyy-MM-dd'T'HH:mm:ss.SSSZ「,」yyyy-MM-dd'T'HH:mm: ss.SSS'Z'「,」EEE,dd MMM yyyy HH:mm:ss zzz「,」yyyy-MM-dd「))| at [Source:[email protected];行:8,柱:23](通過參考鏈:com.xchange.me.vo.InfoVO [ 「createTime」])