JSON文字列を逆シリアル化しようとしています。私は、これはクラスJSON文字列をオブジェクトに変換するGSON。 nullと0を取得する
public class Notebook {
public static String DESCRIPTION = "description";
@SerializedName("id") private long id;
@SerializedName("user_id") private long userId;
@SerializedName("description") private String description;
@SerializedName("created_at") private String railsCreated;
@SerializedName("updated_at") private String railsUpdated;
@SerializedName("created_android") private String androidCreated;
@SerializedName("updated_android") private String androidUpdated;
private List<Note> notes;
private boolean isUploaded = false;
/*constructors, getters, and setters */
public static void uploadNotebook(Notebook notebook) {
MultipartEntity entity = new MultipartEntity();
HttpResponse response;
Notebook updatedNotebook = new Notebook();
Gson gson = new Gson();
try {
StringBody description = new StringBody(notebook.getDescription());
StringBody user = new StringBody("1");
StringBody format = new StringBody("json");
// StringBody androidCreated = new StringBody(notebook.getAndroidCreated().toString());
// StringBody androidUpdated = new StringBody(notebook.getAndroidUpdated().toString());
entity.addPart("description", description);
entity.addPart("user_id", user);
entity.addPart("format", format);
// entity.addPart("android_created", androidCreated);
// entity.addPart("android_updated", androidUpdated);
response = WebService.postRequest(entity, WebService.POST_NOTEBOOK_URL);
String json = EntityUtils.toString(response.getEntity());
Log.i("Note Uploader", json);
updatedNotebook = gson.fromJson(json, Notebook.class);
if(updatedNotebook != null) {
Log.i("Notebook ID", ""+updatedNotebook.getId());
Log.i("Notebook userID", ""+updatedNotebook.getUserId());
Log.i("Notebook Title", ""+updatedNotebook.getDescription());
Log.i("Notebook CreatedAt", ""+updatedNotebook.getRailsCreated());
Log.i("Notebook UpdatedAt", ""+updatedNotebook.getRailsUpdated());
updatedNotebook.setUploaded(true);
}
} catch (UnsupportedEncodingException e) {
Log.i("Note Uploader", e.getMessage());
} catch (ClientProtocolException e) {
Log.i("Note Uploader", e.getMessage());
} catch (IOException e) {
Log.i("Note Uploader", e.getMessage());
}
}
}
Railsのある
をgson使用しています私はポストを発行すると、次のJSONオブジェクトで応答:
{
"notebook":{
"created_android":null,
"created_at":"2011-12-30T06:35:42Z",
"description":"Tatata",
"id":12,
"updated_android":null,
"updated_at":"2011-12-30T06:35:42Z",
"user_id":1
}
}
しかし、これは私がしようとしたとき、私が得るものですupdatedNotebook
フィールドを印刷します。
12-30 14:35:42.673: INFO/Notebook ID(551): 0
12-30 14:35:42.673: INFO/Notebook userID(551): 0
12-30 14:35:42.673: INFO/Notebook Title(551): null
12-30 14:35:42.673: INFO/Notebook CreatedAt(551): null
12-30 14:35:42.673: INFO/Notebook UpdatedAt(551): null
私はおそらく何かが欠けている...
フィギュア、仲間貯金者、歓声! –
心配する必要はありません - うれしく思っています。 –