我的 android 应用程序使用 flexjson 库来反序列化通过 RESTfull Web 服务从服务器接收到的 json 数据字符串。但是当反序列化我得到错误。
flexjson.JSONException: [ data.status ]: 不知道如何将 Clock_in 绑定到 wfa.com.tma.wfa.type.TimeClockStatus 类中。您可能需要使用 ObjectFactory 而不是普通类。
这是我的字符串
{
"data":
{
"todayShift":
{
"startTime":"1970-01-01T13:30:00Z",
"endTime":"1970-01-02T00:00:00Z",
"office":
{
"id":1,"name":"Location Test 1"
}
},
"currentTime":"2017-10-12T07:47:11Z",
"status":"Clock_in",
"latestTime":"2017-10-12T07:46:13Z",
"latestOffice":{"id":1,"name":"Location Test 1"}},
"meta":{"type":"TimeClockDto"}
}
此字符串的 DTO
public class TimeClockDto implements Serializable
{
private static final long serialVersionUID = 1L;
private TodayShiftDto todayShift;
private String currentTime;
private TimeClockStatus status;
private String latestTime;
private BaseLocationDto latestOffice;
public TimeClockDto(TodayShiftDto todayShift, String currentTime,
TimeClockStatus status, String latestClockInTime,
BaseLocationDto latestOffice)
{
this.todayShift = todayShift;
this.currentTime = currentTime;
this.status = status;
this.latestTime = latestClockInTime;
this.latestOffice = latestOffice;
}
//getter, setter
}
`和反序列化代码
和枚举类
public enum TimeClockStatus
{
Clock_in, Clock_out;
}