既存のRestAPIサービスと通信するために、Android用のSpringを使用しています。私はこのチュートリアルに従っています:
http://spring.io/guides/gs/using-rest-android/
私はすでに Android アプリを持っており、この HttpRequestTask をアクティビティの 1 つに統合しました。
private class HttpRequestTask extends AsyncTask<Void, Void, Greeting> {
protected Greeting doInBackground(Void... params) {
try {
final String url = "http://rest-service.guides.spring.io/greeting";
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
Greeting greeting = restTemplate.getForObject(url, Greeting.class);
return greeting;
} catch (Exception e) {
Log.e("MainActivity", e.getMessage(), e);
}
return null;
}
protected void onPostExecute(Greeting greeting) {
....
}
}
次に、onStart メソッド内で execute メソッドを呼び出します
@Override
protected void onStart() {
super.onStart();
new HttpRequestTask().execute();
}
このアクティビティにアクセスすると、アプリがクラッシュします。私はそれをデバッグし、RestTemplate オブジェクトがインスタンス化行で失敗することを発見しました: RestTemplate restTemplate = new RestTemplate();
私は春の 1.0.1.RELEASE コアとレスト jar を使用しています。