Android:从servlet获得响应

时间:2013-05-11 06:59:11

标签: android servlets login

我有一个如下所示的登录servlet:

@WebServlet(name="AndroidResponse", urlPatterns={"/androidres.do"})
public class AndroidResponse extends HttpServlet {

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        PrintWriter out=response.getWriter();
        String un,pw;
        un=request.getParameter("username");
        pw=request.getParameter("password");
        if(un.equalsIgnoreCase("test") && pw.equals("test"))
            out.print(1);
        else
            out.print(0);
    }
}

我正试图在主要活动中访问它,如下所示:

response = CustomHttpClient.executeHttpPost("http://androidres.do/AndroidResponse", postParameters);
                        String res=response.toString();

我收到错误消息,指出主机不存在。获得respnse的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

/androidres.do不是servlet URL的主机部分,而是主机之后的路径。调用servlet的正确URL应为http://YOUR_SERVLET_HOST/androidres.do

所以你需要知道如何从Android设备调用运行servlet的web服务器,例如:

response = CustomHttpClient.executeHttpPost("http://192.168.0.100:8080/androidres.do", postParameters);
String res=response.toString();

如果可以通过IP地址192.168.0.100和端口8080到达网络服务器。