2012-04-02 2 views
0

임은 다음과 자바 객체를 날짜 마샬링 마샬링 :불행은

@XmlRootElement 
public class NegociacionesMobile { 

    @XmlJavaTypeAdapter(JsonDateAdapter.class) 
    private Date fecha; 

    public Date getFecha() { 
    return fecha; 
    } 

    public void setFecha(Date fecha) { 
    this.fecha = fecha; 
    } 
} 

을 그리고 jSonDateAdapter은 다음과 같습니다

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

import javax.xml.bind.annotation.adapters.XmlAdapter; 

public class JsonDateAdapter extends XmlAdapter<String, Date> { 

    @Override 
    public Date unmarshal(String v) throws Exception { 
    Date date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").parse(v); 
    return date; 
    } 

    @Override 
    public String marshal(Date v) throws Exception { 
    String date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").format(v); 
    return date; 
    } 
} 

JSonAdparter의 정렬 화 기능에 들어 가지 날짜가 이상한로 변환입니다 결코 마샬링 체재. ->, "fecha": 1333110291000,

어떤 사람이 무슨 일이 일어나고 있는지 알고 있습니까?

감사합니다.

+0

'@XmlJavaTypeAdapter (JsonDateAdapter.class)'를 필드 대신 getter에 연결하면 어떻게됩니까? – mschonaker

+3

"이상한"형식은 아마도 Date.getTime()에 의해 반환 된 표준 타임 스탬프 형식 일 것입니다. 즉, 1970 년 이후의 밀리 초 수입니다. – biziclop

+0

형식 정보를 주셔서 감사합니다. 그리고 @XmlJavaTypeAdapter (JsonDateAdapter.class)가 같은 방식으로 작동하면 실제로 그 클래스에 들어 가지 않습니다. 이유는 모르겠다. – IturPablo

답변

0

fecha@XmlElement으로 주석 달기.