안드로이드에서 JSP를 통해서 DB 접근하려고 합니다.
로그인 기능이라고 보시면 되는데요...
** Activity **
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String url ="http://............................/login.jsp";
String name ="test";
try {
sendData(name, url);
} catch(Exception e) {
e.printStackTrace();
}
}
private String sendData(String name, String url) throws Exception {
HttpPost request = makeHttpPost(name, url);
HttpClient client = new DefaultHttpClient();
ResponseHandler<String> reshandler = new BasicResponseHandler();
String result = client.execute(request, reshandler);
return result;
}
private HttpPost makeHttpPost(String name, String url) throws Exception {
HttpPost request = new HttpPost(url);
Vector<BasicNameValuePair> nameValue = new Vector<BasicNameValuePair>();
nameValue.add(new BasicNameValuePair("name", name));
request.setEntity(makeEntity(nameValue));
return request;
}
private HttpEntity makeEntity(Vector<BasicNameValuePair> nameValue) throws Exception {
HttpEntity result = null;
try {
result = new UrlEncodedFormEntity(nameValue, "UTF-8");
} catch(UnsupportedEncodingException e) {
}
return result;
}
** login.jsp **
<%
request.setCharacterEncoding("UTF-8");
String name = request.getParameter("name");
out.println("name:"+name);
%>
이렇게 구현햇는데요.
안드로이드에서 name 값을 입력받아서 jsp로 넘기는 건데, name이 null로 들어옵니다.
인터넷에 많이 돌아다니는 소스인데, 잘못된 부분이 있으면 말씀해주세요...