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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите решить проблему с сервлетом, сервлет не видит строки запроса 
:(
    Опции темы
chaineg
  Дата 11.2.2009, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Добрый день. У меня такой вопрос:
Код клиентской части:
Код

public static boolean send(String s) {
        try {
            byte[] data = s.getBytes();
            URL u = new URL("http://127.0.0.1:8082/Web/MyServlettest");
            HttpURLConnection conn = (HttpURLConnection) u.openConnection();
            conn.setRequestMethod("POST");
            conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6");
            conn.setRequestProperty("Content-Type", "text/html");
            conn.setRequestProperty("Content-Length", "" + (data.length));
            conn.setDoInput(true);
            conn.setDoOutput(true);
            OutputStream os;
            os = conn.getOutputStream();
            OutputStreamWriter out = new OutputStreamWriter(os);
            out.write(s);
            out.flush();
            out.close();
            System.out.println("CLIENT << " + new String(data));
            return true;
        } catch (IOException e) {
            e.printStackTrace();
            return false;
        }

А вот код метода doPost сервлета MyServlet:
Код

protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html");
        Enumeration e = req.getHeaderNames();
        System.out.println("request URI: " + req.getRequestURI());
        System.out.println("encoding: " + req.getCharacterEncoding());
        while (e.hasMoreElements()) {
            String name = (String)e.nextElement();
            String value = req.getHeader(name);
            System.out.println(name + " = " + value);
        }
        System.out.println("request: " + req.getQueryString());
        OutputStreamWriter out = new OutputStreamWriter(resp.getOutputStream());
        out.write("400000");
        out.flush();
}


Подскажите, плиз, почему в моём случае метод getQueryString() возвращает null. smile  

PM MAIL   Вверх
fixxer
Дата 11.2.2009, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



А почему он не должен быть null? Я что-то не наблюдаю в урле параметров.


--------------------
user posted image
PM MAIL ICQ   Вверх
chaineg
  Дата 11.2.2009, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(fixxer @ 11.2.2009,  14:10)
А почему он не должен быть null? Я что-то не наблюдаю в урле параметров.

А какие должны быть параметры в Урле, чтобы getQueryString() не возвращал null?  smile

Добавлено через 13 минут и 32 секунды
И каким образом мне в методе doPost получить строку, которую я посылаю методом send, не объявляя УРЛ вот так: 
Код

URL u = new URL("http://127.0.0.1:8082/Web/MyServlettest?" + s);
   smile 
PM MAIL   Вверх
garbuz
Дата 11.2.2009, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Используйте HttpClient от Apache 
PM MAIL   Вверх
necromancer
Дата 12.2.2009, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



что бы разобратся нужно прочесть спецификацию ну или хотя бы Java Doc =))
Request.getRequestURI() + Request.getQueryString() - панацея =)

to garbuz:
клиент совершенно не важен, если уж запрос добрался до сервлета

Это сообщение отредактировал(а) necromancer - 12.2.2009, 11:19


--------------------
С уважением, 
                 Виталий Смык
----------------------------------------------------------------------------------------------
SCJP, SCWCD, OCA
http://dev.maryno.net/video/
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




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


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

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