Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Sendto failed: ECONNRESET (Connection reset by peer) - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android AsyncTask: выполнить действие по окончании анимации http://www.cyberforum.ru/android-dev/thread1238274.html
Есть анимация выполняется 2 секунды... По истечению анимации нужно чтото выполнить например поменять цвет текста. Вот мой код не работает помогите разобраться. public class Sleep3 extends...
Программирование Android Для чего применяется класс OAuthConsumer при публикации приложений в твиттере? для чего применяется этот класс в публикации приложений в твиттере ?? Он помоему сохраняет пользовательский логин и пароль ?? а как туда заносятся данные получается сразу после того как пользователь... http://www.cyberforum.ru/android-dev/thread1238273.html
Программирование Android Запуск таймера после закрытия второй Активити
Есть две Активити, на первой есть Chronometer. При запуске активити1 запускается таймер, при переходе в активити2 таймер в первой активити должен останавливаться и запускаться заново только после...
Программирование Android Менеджер не загружает файлы
Привет Друзья! начал изучать андроид, делаю все строго по алгоритму, скачал с оф.сайта пак (еклипс, сдк, менеджер сдк). Менеджер непонятно себя ведет, в общем все загрузилось, а в пунктах ВЕРСИЯ...
Программирование Android Разбиение большого текста на страницы http://www.cyberforum.ru/android-dev/thread1238039.html
Есть большой текстовый файл, его надо вывести на экран частями (страницами). Задача состоит в предварительном определении числа страниц вывода с учетом установленных параметров шрифта (размер и...
Программирование Android Не работает android:state_pressed <Button android:id="@+id/button1" android:layout_width="150dp" android:layout_height="150dp" android:layout_centerHorizontal="true" ... подробнее

Показать сообщение отдельно
dajver
409 / 273 / 18
Регистрация: 18.09.2010
Сообщений: 1,112

Sendto failed: ECONNRESET (Connection reset by peer) - Программирование Android

04.08.2014, 20:42. Просмотров 2272. Ответов 0
Метки (Все метки)

Обычно привык решать проблемы в коде гуглением, но что то на этот вопрос вообще не нашел ответа...

В общем я пытаюсь отправить видео на сервер с помощью AsyncTask'a, но у меня сыпется на выполнении запроса как раз..

Вот мой стек трейс:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
08-04 19:22:35.254: E/VideoMap(19481): error: sendto failed: ECONNRESET (Connection reset by peer)
08-04 19:22:35.254: E/VideoMap(19481): java.net.SocketException: sendto failed: ECONNRESET (Connection reset by peer)
08-04 19:22:35.254: E/VideoMap(19481):  at libcore.io.IoBridge.maybeThrowAfterSendto(IoBridge.java:499)
08-04 19:22:35.254: E/VideoMap(19481):  at libcore.io.IoBridge.sendto(IoBridge.java:468)
08-04 19:22:35.254: E/VideoMap(19481):  at java.net.PlainSocketImpl.write(PlainSocketImpl.java:507)
08-04 19:22:35.254: E/VideoMap(19481):  at java.net.PlainSocketImpl.access$100(PlainSocketImpl.java:46)
08-04 19:22:35.254: E/VideoMap(19481):  at java.net.PlainSocketImpl$PlainSocketOutputStream.write(PlainSocketImpl.java:269)
08-04 19:22:35.254: E/VideoMap(19481):  at java.io.BufferedOutputStream.write(BufferedOutputStream.java:131)
08-04 19:22:35.254: E/VideoMap(19481):  at java.io.ByteArrayOutputStream.writeTo(ByteArrayOutputStream.java:231)
08-04 19:22:35.254: E/VideoMap(19481):  at com.android.okhttp.internal.http.RetryableOutputStream.writeToSocket(RetryableOutputStream.java:73)
08-04 19:22:35.254: E/VideoMap(19481):  at com.android.okhttp.internal.http.HttpTransport.writeRequestBody(HttpTransport.java:112)
08-04 19:22:35.254: E/VideoMap(19481):  at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:638)
08-04 19:22:35.254: E/VideoMap(19481):  at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:347)
08-04 19:22:35.254: E/VideoMap(19481):  at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:296)
08-04 19:22:35.254: E/VideoMap(19481):  at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:503)
08-04 19:22:35.254: E/VideoMap(19481):  at com.ua.videmap1.rest.api.FileUploader.upLoad2Server(FileUploader.java:114)
08-04 19:22:35.254: E/VideoMap(19481):  at com.ua.videmap1.rest.api.FileUploader.doInBackground(FileUploader.java:41)
08-04 19:22:35.254: E/VideoMap(19481):  at com.ua.videmap1.rest.api.FileUploader.doInBackground(FileUploader.java:1)
08-04 19:22:35.254: E/VideoMap(19481):  at android.os.AsyncTask$2.call(AsyncTask.java:288)
08-04 19:22:35.254: E/VideoMap(19481):  at java.util.concurrent.FutureTask.run(FutureTask.java:237)
08-04 19:22:35.254: E/VideoMap(19481):  at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
08-04 19:22:35.254: E/VideoMap(19481):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
08-04 19:22:35.254: E/VideoMap(19481):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
08-04 19:22:35.254: E/VideoMap(19481):  at java.lang.Thread.run(Thread.java:841)
08-04 19:22:35.254: E/VideoMap(19481): Caused by: libcore.io.ErrnoException: sendto failed: ECONNRESET (Connection reset by peer)
08-04 19:22:35.254: E/VideoMap(19481):  at libcore.io.Posix.sendtoBytes(Native Method)
08-04 19:22:35.254: E/VideoMap(19481):  at libcore.io.Posix.sendto(Posix.java:156)
08-04 19:22:35.254: E/VideoMap(19481):  at libcore.io.BlockGuardOs.sendto(BlockGuardOs.java:177)
08-04 19:22:35.254: E/VideoMap(19481):  at libcore.io.IoBridge.sendto(IoBridge.java:466)
08-04 19:22:35.254: E/VideoMap(19481):  ... 20 more
А вот код отправки видео на сервер
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
package com.ua.videmap1.rest.api;
 
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
 
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.preference.PreferenceManager;
import android.util.Log;
import android.widget.Toast;
 
import com.ua.videomap1.MainActivity;
import com.ua.videomap1.Sector;
import com.ua.videomap1.Video;
 
/**
 * Created by Stewie on 04.01.14.
 */
public class FileUploader extends AsyncTask<Video, Integer, Void> {
    
    private static String upLoadServerUri = "http://nicemir.com/videomap/api.php?addVideo";
    public static int uploadResult = 0;
    private static Context context;
 
    public FileUploader(String url) {
        upLoadServerUri = url;
    }
 
    @Override
    protected Void doInBackground(Video... objects) {
        
        upLoad2Server(objects[0]);
        return null;
    }
 
    private static int upLoad2Server(Video video) {
        int serverResponseCode = -1;
 
        String fileName = video.get_url();
        
        HttpURLConnection conn = null;
        DataOutputStream dos;
        String lineEnd = "\r\n";
        String twoHyphens = "--";
        String boundary = "*****";
        int bytesRead, bytesAvailable, bufferSize;
        byte[] buffer;
        int maxBufferSize = 1 * 1024 * 1024;
 
        File sourceFile = new File(fileName);
        if (!sourceFile.isFile()) {
            Log.e("VideoMap", "Source File Does not exist");
            Toast.makeText(MainActivity.handler, "Source File Does not exist", Toast.LENGTH_LONG).show();
            uploadResult = -100;
        }
        try {
            FileInputStream fileInputStream = new FileInputStream(sourceFile);
            URL url = new URL(upLoadServerUri);
            conn = (HttpURLConnection) url.openConnection();
            conn.setDoInput(true);
            conn.setDoOutput(true);
            conn.setUseCaches(false);
            conn.setRequestMethod("POST");
            conn.setRequestProperty("Connection", "Keep-Alive");
            conn.setRequestProperty("ENCTYPE", "multipart/form-data");
            conn.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + boundary);
            conn.setRequestProperty("filename", fileName);
            conn.setRequestProperty("name", video.get_name());
            conn.setRequestProperty("date", video.get_date());
            conn.setRequestProperty("tag", video.get_tag());
            conn.setRequestProperty("longitude", video.get_lng());
            conn.setRequestProperty("latitude", video.get_lat());
            conn.setRequestProperty("ukey", video.getToken());
 
            Sector sector = MapLocator.convertLatLng(video.getPosition());
            conn.setRequestProperty("sector_lat", Integer.toString(sector.getSector_lat()));
            conn.setRequestProperty("sector_lng", Integer.toString(sector.getSector_lng()));
            dos = new DataOutputStream(conn.getOutputStream());
 
            /*dos.writeBytes(twoHyphens + boundary + lineEnd);
            dos.writeBytes("Content-Disposition: form-data; name=\"uploaded_file\";filename=\""+ fileName + "\"" + lineEnd);
            dos.writeBytes(lineEnd);*/
 
            bytesAvailable = fileInputStream.available();
            Log.i("VideoMap", "Initial .available : " + bytesAvailable);
 
            bufferSize = Math.min(bytesAvailable, maxBufferSize);
            buffer = new byte[bufferSize];
 
            bytesRead = fileInputStream.read(buffer, 0, bufferSize);
 
            while (bytesRead > 0) {
                dos.write(buffer, 0, bufferSize);
                bytesAvailable = fileInputStream.available();
                bufferSize = Math.min(bytesAvailable, maxBufferSize);
                bytesRead = fileInputStream.read(buffer, 0, bufferSize);
            }
 
            dos.writeBytes(lineEnd);
            dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
 
            serverResponseCode = conn.getResponseCode();
            String serverResponseMessage = conn.getResponseMessage();
 
            Log.i("Upload file to server", "HTTP Response is : " + serverResponseMessage + ": " + serverResponseCode);
            Log.i("Upload file to server", fileName + " File is written");
            fileInputStream.close();
            dos.flush();
            dos.close();
        } catch (MalformedURLException ex) {
            ex.printStackTrace();
            Log.e("Upload file to server", "error: " + ex.getMessage(), ex);
            //Toast.makeText(MainActivity.handler, "error: " + ex.getMessage(), Toast.LENGTH_LONG).show();
            uploadResult = -200;
        } catch (Exception e) {
            e.printStackTrace();
            //Toast.makeText(MainActivity.handler, "error: " + e.getMessage(), Toast.LENGTH_LONG).show();
            uploadResult = -300;
        }
 
        try {
            BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            String line;
            while ((line = rd.readLine()) != null) {
                Log.i("VideoMap", "RES Message: " + line);
            }
            rd.close();
        } catch (IOException ioex) {
            Log.e("VideoMap", "error: " + ioex.getMessage(), ioex);
            //Toast.makeText(MainActivity.handler, "error: " + ioex.getMessage(), Toast.LENGTH_LONG).show();
            uploadResult = -1;
        }
        uploadResult = serverResponseCode;
        return serverResponseCode;
    }
}
Может кто сталкивался и знает как это починить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru