この警告が表示されます:
06-26 15:19:09.689: W/System.err(611): org.apache.http.conn.HttpHostConnectException: Connection to http://localhost:8080 refused
06-26 15:19:09.689: W/System.err(611): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:183)
06-26 15:19:09.719: W/System.err(611): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
06-26 15:19:09.719: W/System.err(611): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
06-26 15:19:09.719: W/System.err(611): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
06-26 15:19:09.739: W/System.err(611): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
06-26 15:19:09.739: W/System.err(611): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
06-26 15:19:09.739: W/System.err(611): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
非UIクラスでこのコードを実行しようとしている間:
1 public String getXmlFromUrl(String url) {
2 String xml = null;
3 try {
4 HttpClient httpClient = new DefaultHttpClient();
5 HttpPost httpPost = new HttpPost(url);
6 HttpResponse httpResponse = httpClient.execute(httpPost);
7 HttpEntity httpEntity = httpResponse.getEntity();
8 xml = EntityUtils.toString(httpEntity);
9 } catch (UnsupportedEncodingException e) {
10 e.printStackTrace();
11 } catch (ClientProtocolException e) {
12 e.printStackTrace();
13 } catch (IOException e) {
14 e.printStackTrace();
15 }
16 return xml;
17 }
私はURLを次のように提供しています
http://10.0.2.2:8080/Mysite/xxx
ここで何が問題なのですか?なぜこのエラーが発生するのですか?
このため、「xml」文字列は null が返され、アプリでさらにエラーが発生します。
アプリをデバッグしたところ、例外 IOException をキャッチしたことがわかります。このため、6 行目から 13 行目まで進んでいます。