我有一个如下所示的登录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的正确方法是什么?
答案 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到达网络服务器。