Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> httpconnection, помогите разобраться 
:(
    Опции темы
zekaaa
Дата 27.4.2011, 19:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 15.2.2005
Где: где-то в Украине

Репутация: нет
Всего: нет



Прошу помощи в разборе httpconnection
Нужно передатьт на сервер 1 переменную.
Выбрал метод ПОСТ.
вызываю так
Код

 try {
             String param = "login=xxx&pass=xxx&cell1="+cellid+"/n";
             postViaHttpConnection("http://dytyna.in.ua/input.php", param.getBytes());
           
           }
         catch(Exception e){
             e.printStackTrace();
           }

ошибка при компиляции...
когда убираю переменную - просто проверяя httpconnection, получается так:
Код

 try {
             postViaHttpConnection("http://dytyna.in.ua/input.php", "login=xxx&pass=xxx".getBytes());
           
           }
         catch(Exception e){
             e.printStackTrace();
           }

ошибку не выдает, но и никакой реакции нет, нет даже попыток соединения.

 код реализации ниже
Код

void postViaHttpConnection(String  url, byte[] postData) throws IOException {
    HttpConnection c = null;
    OutputStream os = null;
    int rc;

    try {
        c = (HttpConnection)Connector.open(url);

        // Устанавливаем метод запроса: POST
        c.setRequestMethod(HttpConnection.POST);
        // Добавляем хттп-заголовки. Здесь только User-Agent
        c.setRequestProperty("User-Agent",
            "Profile/MIDP-2.0 Configuration/CLDC-1.0");

        // Открываем поток для вывода пост-данных
        os = c.openOutputStream();
        os.write(postData);
        os.flush();           // Это необязательно, все равно getResponseCode() отправит поток

        // Получение кода ответа откроет соединение,
        // отправит запрос и получит HTTP-заголовки
        rc = c.getResponseCode();

        if (rc != HttpConnection.HTTP_OK) {
            throw new IOException("HTTP response code: " + rc);
        }

        // Дальше можно получить ответ, как в предыдущих примерах

    } catch (ClassCastException e) {
        throw new IllegalArgumentException("Not an HTTP URL");
    } finally {
        if (os != null)
            os.close();
        if (c != null)
            c.close();
    }
}



Очень надеюсь на вашу помощь. В Яве зелен, именно поэтому подозреваю что опытный человек напишет что оно то и не должно работать)
если так и есть - прошу помощи тогда как надо

EDIT начал искать по форуму - пришел к выводу что мне нужен отдельный поток...правда? если да то как его правильно запускать?

Это сообщение отредактировал(а) zekaaa - 27.4.2011, 20:05
PM MAIL ICQ   Вверх
oxigen
Дата 28.4.2011, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 12.4.2010

Репутация: 4
Всего: 4



1. какая ошибка при компиляции? Может просто забыл cellid инициализировать?

2. Запустил твой код на симуляторе - нормально все работает. Получает от http://dytyna.in.ua  response code = 411. и 
...<center><h1>411 Length Required</h1></center>...
Так что проблема не в коде.

3. Если запускать работу с сетью без потоков, то пока он будет работать - интерфейс программы "заморозится" и не будет ни на что реагировать. В тестовой программе это неважно - можно пока не заморачиваться с потоками.
А как запускать и работать с потоками - это в любой книге по java есть. Подробнее, чем на форуме расскажут и с примерами.

 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0800 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.