私はスプリングコントローラーを持っています:
@RequestMapping(value = "/add", method = RequestMethod.POST,
consumes = "application/json")
public @ResponseBody ResponseDto<Job> add(User user) {
...
}
APACHE HTTP CLIENT を使用して、次のようにオブジェクトを POST できます。
HttpPost post = new HttpPost(url);
List nameValuePairs = new ArrayList();
nameValuePairs.add(new BasicNameValuePair("name", "xxx"));
post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = client.execute(post);
コントローラーで、「xxx」という名前のユーザーを取得します
User オブジェクトを作成してサーバーに投稿したいので、次のように GSON オブジェクトを使用してみました。
User user = new User();
user.setName("yyy");
Gson gson = new Gson();
String json = gson.toJson(user);
HttpClient client = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
StringEntity entity = new StringEntity(json.toString(), HTTP.UTF_8);
entity.setContentType("application/json");
httpPost.setEntity(entity);
HttpResponse response = client.execute(httpPost);
しかし、このようにして、nullフィールドを持つサーバー User オブジェクトに入ります...
どうすれば解決できますか?