当前位置: 代码迷 >> Android >> 要疯了,Android联接Servlet
  详细解决方案

要疯了,Android联接Servlet

热度:77   发布时间:2016-05-01 12:13:10.0
要疯了,Android连接Servlet
 我写了一个很简单的Servlet
public class TestServlet extends HttpServlet  
{
public void doGet ( HttpServletRequest request , HttpServletResponse response )  throws ServletException , IOException  
{  
PrintWriter out = response.getWriter();  
out.println("Hello World!!!!!!!!!!!!!!");  
}  

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(req, resp);
}

}
部署在Tomcat上,在浏览器中http://localhost:8080/mapservice/hello可以正常访问到
但是在Android中怎么都访问不了,在client.execute(getMethod)会卡很长一段时间,然后报
org.apache.http.conn.HttpHostConnectException: Connection to http://10.0.2.2:8080 refused;
代码如下
try 
{
DefaultHttpClient client=new DefaultHttpClient(new BasicHttpParams());

HttpGet getMethod = new HttpGet("http://10.0.2.2:8080/mapservice/hello");
HttpResponse httpResponse = client.execute(getMethod);  
            // statusCode == 200 正常  
         int  statusCode = httpResponse.getStatusLine().getStatusCode();  

            // 处理返回的httpResponse信息  
      //    String   result2 = retrieveInputStream(httpResponse.getEntity());  




catch (Exception e)
{
Toast.makeText(context, "连接失败", Toast.LENGTH_LONG).show();

}
用户权限也已经添加<uses-permission android:name="android.permission.INTERNET"></uses-permission>

我都要被搞疯了,想做一个网络应用,已经试过WCF,WebService都不行,要是Servlet还不行我就没办法了。。
不知道到底是Android的设置问题还是服务器那边的配置问题
或者哪位大哥可以给个成功的代码给我不,小弟感激不尽




------解决方案--------------------
请问你是用真机还是模拟器测试的?模拟器应该是可以访问本机的地址,真机的话,是无法访问的
------解决方案--------------------
http://10.0.2.2:8080/mapservice/hello
建议先把这个地址在浏览器中打开看看,如果浏览器就打不开,那肯定是没有办法连接上的。
------解决方案--------------------
先用你的模拟器上的浏览器访问http://10.0.2.2:8080/mapservice/hello,如果有结果,那么模拟器访问你的servlet是没问题的、然后就要检查你的logcat,看看你的android代码有什么问题、可以贴出来,我看看~
------解决方案--------------------
浏览器打不开说明是你的模拟器和pc没连接上。。。你问问谷歌度娘怎么连接吧
  相关解决方案