从android httpclient程序访问Servlet获取连接拒绝?

时间:2014-05-11 09:44:32

标签: java android servlets httpclient

当我从android httpclient utils访问localhost servlet时,我收到connection refused错误。 servlet运行正常,但我收到错误。

这是代码:

String dmurl="http://127.0.0.1:9090/DataManagerProject/DMServlet";                                  
HttpClient httpClient = new DefaultHttpClient();
HttpGet hrtreq = new HttpGet(dmurl);
HttpResponse resp = httpClient.execute(hrtreq);
String output = EntityUtils.toString(resp.getEntity());

我收到以下错误org.apache.http.conn.httphostconnectexception connection to refused

3 个答案:

答案 0 :(得分:1)

如果您使用模拟器为本地服务器运行您的应用程序。将本地IP称为10.0.2.2,并且必须将 Internet权限添加到您的应用中

有关详细信息,请参阅此link

此外,关闭计算机中的防火墙和任何防病毒应用程序

答案 1 :(得分:0)

检查您的模拟器和应用程序中是否启用了互联网访问

<uses-permission android:name="android.permission.INTERNET"/> 

要从应用程序访问设备或模拟器的互联网数据,请在清单xml文件中添加以上行。另外,检查servlet项目中的servlet映射是否正确。

答案 2 :(得分:0)

假设您的servlet在您的计算机上运行,​​您无法建立连接的原因是因为您使用了错误的IP。 127.0.0.1是一个环回地址,这意味着如果您在Android设备上连接到127.0.0.1,它将尝试连接到Android设备。

要使其工作,您必须找到运行servlet的计算机的IP地址,并在URL中使用它。 此外,请确保您已向您的应用授予了Internet权限。