마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

PostHttp 질문드립니다.

0 추천

전체 소스는 아래와 같습니다.

 

그런데 도대체 왜..

 

execute 할때 IOException이 발생하는지 모르겠습니다 ㅠ-ㅠ

 

제가 뭘 잘못 작성한것일까요?

 

도움 부탁드립니다.

감사합니다!

 

 

public class PostHttp {
 
 // Tag is for print log
 private static String TAG = "PostHttp";
 
 public PostHttp() {
  super();
  // TODO Auto-generated constructor stub
 }

 // paramList is for Expandability
 public String postHttp(String url, ArrayList<NameValuePair> paramsList) {

  StringBuffer builder = new StringBuffer();

  HttpClient mHttpClient = new DefaultHttpClient();
  HttpPost post = new HttpPost(url);
  
  HttpResponse response;

  HttpParams params = mHttpClient.getParams();
  HttpConnectionParams.setConnectionTimeout(params, 15000);
  HttpConnectionParams.setSoTimeout(params, 15000);
  ConnManagerParams.setTimeout(params, 15000);

  try {
   HttpEntity entity = null;
   entity = new UrlEncodedFormEntity(paramsList);

   post.addHeader(entity.getContentType());
   post.setEntity(entity);

   response = mHttpClient.execute(post);
   
   StatusLine statusLine = response.getStatusLine();
   int statusCode = statusLine.getStatusCode();

   // Connection success
   if (statusCode == 200) {

    HttpEntity entityMain = response.getEntity();
    InputStream content = entityMain.getContent();
    BufferedReader reader = new BufferedReader(
      new InputStreamReader(content));
    String line;
    while ((line = reader.readLine()) != null) {
     builder.append(line);
    }
   }
   // Connection fail
   else {
    Log.d(TAG,"PostHttp fail : "+ statusCode);
   }
  } catch (ClientProtocolException e) {
   Log.v("SmartDialerPostHttp ClientProtocolException Error1",e.getMessage());
  } catch (UnsupportedEncodingException e) {
   Log.v("SmartDialerPostHttp UnsupportedEncodingException Error2",e.getMessage());
  } catch (IOException e) {
   Log.v("SmartDialerPostHttp IOException Error3",e.getMessage());
  }
catch (Exception e) {
   Log.v("SmartDialerPostHttp Exception Error4",e.getMessage());
  }
  
  Log.d(TAG,builder.toString());
  return builder.toString();

 }
}

apcnic (1,420 포인트) 님이 2013년 3월 11일 질문
apcnic님이 2013년 3월 11일 수정
무엇을 하시려고 하는지.... 파싱을 원하시는 건가요??
아니면 html을 전부 받아오시겠다는 건가요???
JSP페이지에서 out.println(obj);로 json을 뿌려줍니다.
그것을 문자열로 받아와서 파싱을 하려고 합니다.
그런데 execute에서  IOExecption이 발생해버리니..
도움 부탁드립니다.
감사합니다..
보통 예외가 발생하면 왜 발생하는지와 라인이 친절하게 나오지 않나요?
전 그걸 보고 예외 발생하면 처리하는데..
차라리 logcat 의 로그를 올리시는게 빠를 듯 합니다.
아.. 인터넷 퍼미션을 안줬었네요..
해결ㅠ=ㅠ
감사합니다! (^^)(__)
댓글을 이제야 봤네요..ㅎㅎ;
해결하셨다니 다행이네요.

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...