스레드와 함수를 이용해 Asynctask로 센서 값을 전달 한 후
Asynctask를 이용하여 서블릿으로 값을 전송헀습니다.
하지만 서블릿에서 값을 확인해보면 null 값으로 나오는데..
정확한 이유를 모르겠습니다.. 도와주십시오..
1. Asynctask
class AsyncServlet extends AsyncTask<String, String, String> {
String result;
protected String doInBackground(String... arg0) {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://IP 주소/WebServer/WebServer");
try{
System.out.println("AsyncServlet start");
List<NameValuePair> Params = new ArrayList<NameValuePair>();
Params.add(new BasicNameValuePair("Sacc_x", arg0[0]));
Params.add(new BasicNameValuePair("Sacc_y", arg0[1]));
Params.add(new BasicNameValuePair("Sacc_z", arg0[2]));
Params.add(new BasicNameValuePair("Sgyro_p", arg0[3]));
Params.add(new BasicNameValuePair("Sgyro_r", arg0[4]));
Params.add(new BasicNameValuePair("Sgyro_y", arg0[5]));
Params.add(new BasicNameValuePair("Smag_x", arg0[6]));
Params.add(new BasicNameValuePair("Smag_y", arg0[7]));
Params.add(new BasicNameValuePair("Smag_z", arg0[8]));
Params.add(new BasicNameValuePair("currentDate", arg0[9]));
System.out.println("Params :" + arg0[0]);
System.out.println("Params :" + arg0[1]);
httppost.setEntity(new UrlEncodedFormEntity(Params));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"),8);
StringBuilder sb = new StringBuilder();
String line = null;
while((line = reader.readLine()) != null) {
sb.append(line).append("\n");
}
is.close();
result = sb.toString();
} catch(IOException e){
e.printStackTrace();
} catch(Exception e){
e.printStackTrace();
} finally {
httpclient.getConnectionManager().shutdown();
}
return result;
}
}
}
2. 서블릿
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("euc-kr");
System.out.println("doPost");
String AccX, AccY, AccZ, GyroP, GyroR, GyroY, MagX, MagY, MagZ, CurrentDate;
AccX = request.getParameter("Sacc_x");
AccY = request.getParameter("Sacc_y");
AccZ = request.getParameter("Sacc_z");
GyroP = request.getParameter("Sgyro_p");
GyroR = request.getParameter("Sgyro_r");
GyroY = request.getParameter("Sgyro_y");
MagX = request.getParameter("Smag_x");
MagY = request.getParameter("Smag_y");
MagZ = request.getParameter("Smag_z");
CurrentDate = request.getParameter("currentDate");
System.out.println(AccX);
System.out.println(AccY);
System.out.println(AccZ);
}
}