【发布时间】:2012-02-19 21:32:49
【问题描述】:
所以我从一个看起来像这样的服务器返回一个对象:
{
"Status": {
"stuff":"stuff...";
"morestuff":"morestuff...";
};
"Data": { ... another object ... };
}
但是,当我取回这个对象时,我想将它反序列化为如下所示的 java 类:
class Response
{
public StatusObject Status;
public String Data;
}
但 FlexJson 将对象视为数据属性,然后尝试将 HashMap 强制转换为我的数据字符串。如果我收到以“null”作为 Data 属性的响应,则一切正常(因为您可以将 null 分配给字符串)。
我该如何告诉 FlexJson 不要试图从 Data 属性中创建一个 HashMap,而只是将它作为一个字符串(即使它是一个 JSON 对象)?
现在我的反序列化代码行如下所示:
formattedResponse = new JSONDeserializer<network.Response>()
.use( "values", network.Response.class )
.deserialize(JSONString, network.Response.class);
感谢您的帮助!
【问题讨论】:
-
所以你必须告诉它3次? Greeeaaaat