2

指定された JSON

{"news" : [ {...}, {...}, {...} ] }

この配列には、既に POJO として宣言したカスタム オブジェクトが含まれています。キーパス「ニュース」でカスタムオブジェクトをマップしたいだけです。

restTemplate.exchange(URI + "/news/{limit}/", HttpMethod.GET, CustomObject[].class, 10)

この JSON が想定されているため、例外をスローします

[ {...}, {...}, {...}]

ニーズに合わせて RestTemplate を構成する方法はありますか?

よろしく

アップデート:

restTemplate.exchange(URI + "/news/{limit}/", HttpMethod.GET, requestEntity, JsonElement.class,10).getBody().getAsJsonObject().get("news");
CustomObject[] result = gson.fromJson(body, CustomObject[].class);

このスニペットは機能しますが、よりクリーンな方法はありますか? 驚いたことに、へのマッピングJSONObjectも機能しませんでした.JSONElementは最後に仕事をしました.

4

1 に答える 1

0

さて、この質問を閉じるために、ここに更新を追加します。誰かがよりクリーンなソリューションを提供できる場合は、喜んで受け入れます。

restTemplate.exchange(URI + "/news/{limit}/", HttpMethod.GET, requestEntity, JsonElement.class,10).getBody().getAsJsonObject().get("news");
CustomObject[] result = gson.fromJson(body, CustomObject[].class);

このスニペットは機能しますが、よりクリーンな方法はありますか? 驚いたことに、JSONObject へのマッピングも機能しませんでした。JSONElement が最後に機能しました。

于 2012-10-17T10:24:09.533 に答える