2016-04-26 36 views
2

このコードを使用して、画像をアップロードするサーバーに接続しようとしています。java.net.SocketException:sendtoが失敗しました:ECONNRESET(ピアによって接続がリセットされました)

try { 
     url = new URL(requestURL); 

     HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 
     conn.setRequestProperty("connection", "close"); 
     System.setProperty("http.keepAlive", "false"); 
     conn.setReadTimeout(15000); 
     conn.setConnectTimeout(15000); 
     conn.setRequestMethod("POST"); 
     conn.setDoInput(true); 
     conn.setDoOutput(true); 

     OutputStream os = conn.getOutputStream(); 
     BufferedWriter writer = new BufferedWriter(
       new OutputStreamWriter(os, "UTF-8")); 
     writer.write(getPostDataString(postDataParams)); 

     writer.flush(); 
     writer.close(); 
     os.close(); 
     int responseCode = conn.getResponseCode(); 

     if (responseCode == HttpsURLConnection.HTTP_OK) { 
      BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); 
      sb = new StringBuilder(); 
      String response; 
      while ((response = br.readLine()) != null){ 
       sb.append(response); 
      } 
     } 
    } catch (IOException e){ 
     if (e.getMessage().indexOf("Connection reset by peer") > 0); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

私は常に上記のようにSocketExceptionを取得します。

String result = rh.sendPostRequest(UPLOAD_URL,data); 
rh

RequestHandler放置ある:

04-26 18:53:26.091 13039-13092/kovacsdev.hu.facec W/System.err: java.net.SocketException: sendto failed: ECONNRESET (Connection reset by peer) 
04-26 18:53:26.092 13039-13039/kovacsdev.hu.facec I/SurfaceTextureClient: [STC::queueBuffer] (this:0x53cf5360) fps:45.86, dur:1002.96, max:57.77, min:1.67 
04-26 18:53:26.095 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.io.IoBridge.maybeThrowAfterSendto(IoBridge.java:550) 
04-26 18:53:26.096 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.io.IoBridge.sendto(IoBridge.java:519) 
04-26 18:53:26.096 13039-13092/kovacsdev.hu.facec W/System.err:  at java.net.PlainSocketImpl.write(PlainSocketImpl.java:511) 
04-26 18:53:26.096 13039-13092/kovacsdev.hu.facec W/System.err:  at java.net.PlainSocketImpl.access$100(PlainSocketImpl.java:46) 
04-26 18:53:26.096 13039-13092/kovacsdev.hu.facec W/System.err:  at java.net.PlainSocketImpl$PlainSocketOutputStream.write(PlainSocketImpl.java:269) 
04-26 18:53:26.096 13039-13092/kovacsdev.hu.facec W/System.err:  at java.io.ByteArrayOutputStream.writeTo(ByteArrayOutputStream.java:231) 
04-26 18:53:26.096 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.net.http.RetryableOutputStream.writeToSocket(RetryableOutputStream.java:70) 
04-26 18:53:26.096 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:814) 
04-26 18:53:26.096 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:293) 
04-26 18:53:26.097 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:505) 
04-26 18:53:26.097 13039-13092/kovacsdev.hu.facec W/System.err:  at kovacsdev.hu.facec.RequestHandler.sendPostRequest(RequestHandler.java:43) 
04-26 18:53:26.097 13039-13092/kovacsdev.hu.facec W/System.err:  at kovacsdev.hu.facec.UploadUI$1UploadImage.doInBackground(UploadUI.java:108) 
04-26 18:53:26.097 13039-13092/kovacsdev.hu.facec W/System.err:  at kovacsdev.hu.facec.UploadUI$1UploadImage.doInBackground(UploadUI.java:82) 
04-26 18:53:26.097 13039-13092/kovacsdev.hu.facec W/System.err:  at android.os.AsyncTask$2.call(AsyncTask.java:287) 
04-26 18:53:26.097 13039-13092/kovacsdev.hu.facec W/System.err:  at java.util.concurrent.FutureTask.run(FutureTask.java:234) 
04-26 18:53:26.098 13039-13092/kovacsdev.hu.facec W/System.err:  at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230) 
04-26 18:53:26.098 13039-13092/kovacsdev.hu.facec W/System.err:  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080) 
04-26 18:53:26.098 13039-13092/kovacsdev.hu.facec W/System.err:  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573) 
04-26 18:53:26.098 13039-13092/kovacsdev.hu.facec W/System.err:  at java.lang.Thread.run(Thread.java:838) 
04-26 18:53:26.098 13039-13092/kovacsdev.hu.facec W/System.err: Caused by: libcore.io.ErrnoException: sendto failed: ECONNRESET (Connection reset by peer) 
04-26 18:53:26.099 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.io.Posix.sendtoBytes(Native Method) 
04-26 18:53:26.099 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.io.Posix.sendto(Posix.java:151) 
04-26 18:53:26.100 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.io.BlockGuardOs.sendto(BlockGuardOs.java:177) 
04-26 18:53:26.100 13039-13092/kovacsdev.hu.facec W/System.err:  at libcore.io.IoBridge.sendto(IoBridge.java:517) 

UploadUI

は、ライン108上のこのコードスニペットを含んでいます。 SQLデータベースに画像の詳細を投稿する必要がありますが、サーバー側のコードは機能しているようです。

+0

画像がありません。 UTF-8はイメージ用ではありません。 – greenapps

+0

'rh.sendPostRequest'それが原因でエラーが発生した場合、なぜコードを表示しないのですか? – greenapps

答えて

3

こんにちはも

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_upload_documents); 




    if (android.os.Build.VERSION.SDK_INT > 9) { 
     StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder() 
       .permitAll().build(); 
     StrictMode.setThreadPolicy(policy); 
    } 

    //Statement or Controls Declaration or your code 

} 
のonCreate()内のコードの下にこれを入れて....同じproblme.Nowがcode.Iの下に使用して解決し、それはまた、あなたが...それを試し役立つことを願っています直面しています
関連する問題