![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Жоржик |
|
||||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 20.2.2011 Репутация: нет Всего: нет |
Здравствуйте. Я новичек в J2EE, так что пока использую только сервлеты без JSP. Так вот, в сервлете метод GET:
А метод POST:
request.getParameter("newName") постоянно возвращает null. Что я делаю не правильно? Если users.setName() добавить строку, то все работает. |
||||
|
|||||
llalive |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 7.6.2011 Репутация: нет Всего: нет |
Куда отправляет данные Ваша форма?
Функция doPost выполняется при отправке данных - т.е. при нажатии на кнопку submit. Далее данные отправляются по пути LoginForm, указанному в параметре action формы. Проблема в том, что request.getParameter("newName") возвращает null? Собственно, на момент вызова массив с параметрами действительно пуст. Допустим если бы у Вас был другой сервлет, и на него ссылалась данная форма - то он бы принял Вашу переменную. Также бывает полезно использовать method=GET, дабы видеть что передаётся. Всё вышеизложенное ИМХО - могу ошибаться.. |
|||
|
||||
Жоржик |
|
||||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 20.2.2011 Репутация: нет Всего: нет |
А без передачи в другой сервлет никак не получится? Это сообщение отредактировал(а) Жоржик - 11.6.2011, 19:28 |
||||
|
|||||
llalive |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 7.6.2011 Репутация: нет Всего: нет |
Ну допустим можно ссылаться на тот же сервлет (если прописать путь LoginForm для него).
Из разряда "на костылях" ![]() Используйте функцию proceessRequest. Думаю нечто подобное должно работать. Т.е. сервлет будет выводить форму, затем редиректить сам на себя и, если параметр dataSend будет равен true - будет обрабатывать переправленную переменную newName (далее я так понял Вы её в базу сохраняете?).
Не проверял, ибо вырвано из контекста и не до конца ясна задача Вашей программы. Может выдавать NullException при проверке (request.getParameter("dataSend").equals("true")). Тогда ещё и на null придется проверять - (!request.getParameter("dataSend")==null). Вообщем, ###код в действии)). |
|||
|
||||
Жоржик |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 20.2.2011 Репутация: нет Всего: нет |
Спасибо. Проблему решил: прописал в form полный путь к сервлету out.print("<form action=\"../Example/LoginForm\" method=\"POST\">").
Это сообщение отредактировал(а) Жоржик - 11.6.2011, 19:53 |
|||
|
||||
Stolzen |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1041 Регистрация: 17.10.2005 Репутация: 3 Всего: 48 |
Замените на <form action=\"\" method=\"POST\"> и все должно работать. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |