2013-05-11 3 views
1

У меня есть логин сервлет, который выглядит следующим образом:Android: получить ответ от сервлета

@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(); 

Я получаю ошибка, указывающая, что хост не существует. Каков правильный способ получить ответ?

ответ

1

/androidres.do не является главной частью URL сервлета, но путь, который приходит после хоста. Правильный URL для вызова вашего сервлета должен быть http://YOUR_SERVLET_HOST/androidres.do.

Таким образом, вы должны знать, как вызвать веб-сервер, который запускает сервлет от андроида устройства, например:

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

, если веб-сервер может быть достигнуто на адрес 192.168.0.100 и порт IP 8080.

Смежные вопросы