ParserUtil を使用して、Datastream や Datapoint などの Xively データ オブジェクトを逆シリアル化およびシリアル化しようとしています。
toJson 関数は完全に機能しますが、 toConnectedObject および toConnectedObjects 関数が機能しません。
以下は、コードの抜粋と対応するログです。
String jsonDP=ParserUtil.toJson(false, dp);
Datapoint dpNew=ParserUtil.toConnectedObject(jsonDP, Datapoint.class);
LOGGER.debug(ParserUtil.toJson(false, dpNew));
ログ:
2013-08-28 11:45:31,348 2064 DEBUG [ParserUtil.java: 136] (main:) Parsing models to json
2013-08-28 11:45:31,376 2092 DEBUG [ParserUtil.java: 187] (main:) Parsed json from models: {"datapoints":[{"at":"2012-02-19T00:00:02.283064Z","value":"261"}]}
2013-08-28 11:45:31,376 2092 DEBUG [ParserUtil.java: 221] (main:) Parsing string to object: {"datapoints":[{"at":"2012-02-19T00:00:02.283064Z","value":"261"}]}
2013-08-28 11:45:31,377 2093 DEBUG [ParserUtil.java: 136] (main:) Parsing models to json
2013-08-28 11:45:31,377 2093 DEBUG [ParserUtil.java: 187] (main:) Parsed json from models: {"datapoints":[{"value":null}]}
2013-08-28 11:45:31,377 2093 DEBUG [XivelyHelper.java: 295] (main:) {"datapoints":[{"value":null}]}
toConnectedObject(jsonDP, Datapoint.class) の結果である newDP オブジェクトには、「at」フィールドと「value」フィールドの両方が null に設定されています。
Datastream オブジェクトで同じ手順を試しましたが、すべてのフィールドも null です。