Соединение не выполнено: ECONNREFUSED
Я разрабатываю одно приложение, и я думаю, что хочу сделать, это получить данные из базы данных сервера в android. Поэтому я начал запускать некоторые уроки. Я нашел тот, который делает многое, что я хочу.
Но я получаю:
detailMessage "failed to connect to localhost/127.0.0.1 (port 8080): connect failed: ECONNREFUSED (Connection refused)" (id=830021648792)
Весь код этого учебника находится здесь ссылка
Ошибка:
OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream());
Я проверил, что:
- брандмауэр отключен.
- ping работает
Строка соединения
- точно такая же, как при запуске сервлета из интерфейса администратора сервера -
http://localhost:8080/Requestor/RQSRV
-сервер работает
Моя конфигурация:
- Сервер: Glass Fish 4.0
- Android-приложение - разработанное в Eclipse
- Сервлет - разработан в NetBeans
Ответы
Ответ 1
Чтобы получить доступ к локальному хосту вашего ПК из эмулятора Android, используйте 10.0.2.2 вместо 127.0.0.1. localhost или 127.0.0.1 относится к самому эмулируемому устройству, а не к хосту, на котором работает эмулятор.
Ссылка: http://developer.android.com/tools/devices/emulator.html#networkaddresses
Для Genymotion используйте 10.0.3.2 вместо 10.0.2.2
Ответ 2
если вы используете genymotion, затем перейдите в командную строку типа ipconfig
-связь для сети Ethernet-сети виртуального хоста Ethernet:
-find для адреса Ipv4... 192.1 **. **. *
скопировать
http://192.1 .. */foldername/filename/filename.json или filename.php
чтобы проверить, работает ли его работа с браузером в копии эмулятора, URL-адрес должен найти файл, который вы ищете в своем браузере.
Извините за английский..
Это сработало для меня, надеюсь, это может помочь кому-то...
Спасибо,..