![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
sith |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 11.2.2007 Репутация: нет Всего: 1 |
... появилась такая проблема...
... есть страница с формой... пользователь вводит данные нажимает отправить и подчиненный сервлет записывает эти данные в файл... и возвращает страницу со всем данными которые в файле были записанны... ... в процессе отладки обнаружилось очень неприятное дело... при нажатии кнопки обновить страницу сервлет опять запускаеться и дописывает повторные данные.... и так может быть до безконечности... ... вопрос... как избежать этот баг... -------------------- Там где ты ставишь глупые смайлики, я вбиваю восклицания знаки!!! |
|||
|
||||
ecologist |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 452 Регистрация: 28.2.2007 Репутация: 5 Всего: 9 |
Так разве при "настоящей" отправке не нажимается какая-то кнопка ? На этот атрибут и ловить - если установлен параметр (для кнопки) - значит это пользователь нажал. Иначе - не нажал а просот обновил.
|
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 16 Всего: 151 |
Приведи код своей формы. Я полагаю, ты не используешь атрибут action у формы, а оставляешь его дефолтовым (текущая страница). Это так?
Это сообщение отредактировал(а) batigoal - 10.7.2007, 12:18 -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
ekr |
|
|||
![]() ...и это пройдет... ![]() ![]() Профиль Группа: Участник Сообщений: 359 Регистрация: 6.5.2007 Где: Moscow, RU Репутация: 12 Всего: 19 |
Используй шаблон проектирования Маркер Синхронизации.
К слову, в struts это называется transaction token, если struts используешь. |
|||
|
||||
sith |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 11.2.2007 Репутация: нет Всего: 1 |
... не работает...
... при обновлении страницы имя параметра и само значение его устанавливаемое в кнопке не пропадает... -------------------- Там где ты ставишь глупые смайлики, я вбиваю восклицания знаки!!! |
|||
|
||||
sith |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 11.2.2007 Репутация: нет Всего: 1 |
... привожу код своей формы
... кстате еще один такой ньюанс... если я ввожу данные в форму русскими буквами... то в своем сервлете получаю вопросики... как это исправить... -------------------- Там где ты ставишь глупые смайлики, я вбиваю восклицания знаки!!! |
|||
|
||||
Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 24 Всего: 62 |
тут |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 16 Всего: 151 |
А траница у тебя доступна по УРЛу /BobsBandProj/guest или какому-то другому?
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
sith |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 11.2.2007 Репутация: нет Всего: 1 |
... с кодировкой я разобрался...
... а как избавиться от проблемы с обновлением страницы... -------------------- Там где ты ставишь глупые смайлики, я вбиваю восклицания знаки!!! |
|||
|
||||
fixxer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 14.9.2006 Где: Саратов, Россия Репутация: 4 Всего: 27 |
Попробуйте использовать метод POST
Или разделите отображение формы и ее обработку, например тут Это сообщение отредактировал(а) fixxer - 10.7.2007, 17:14 -------------------- ![]() |
|||
|
||||
check |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 610 Регистрация: 3.4.2006 Репутация: 2 Всего: 23 |
Надо всего лишь сделать в сервлете редирект на страницу с формой после записи в файл
В этом случае значения полей обнулятся. |
|||
|
||||
sith |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 11.2.2007 Репутация: нет Всего: 1 |
batigoal ... именно так...
fixxer я не все понял в этой статье а особенно куда всунуть этот response.sendRedirect(response.encodeRedirectURL(URL)) и что поставить вместо URL -------------------- Там где ты ставишь глупые смайлики, я вбиваю восклицания знаки!!! |
|||
|
||||
check |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 610 Регистрация: 3.4.2006 Репутация: 2 Всего: 23 |
А, ну по ссылке, которую дал fixxer как раз этот способ описан.
|
|||
|
||||
sith |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 11.2.2007 Репутация: нет Всего: 1 |
...а нельзя как то сдлеать что бы все таки я остался на той страничке... ведь получаеться так... что пльзователь выбирает... смотреть данные или записать... выбирает записать... и после всего ему опять предлогают записать... ему нужно возвращаться назад... это мне кажеться не очень красиво...
... было бы лутше если бы форма отправила данные... сервлет отработал их... вернул страничку и обнулил параметры... -------------------- Там где ты ставишь глупые смайлики, я вбиваю восклицания знаки!!! |
|||
|
||||
check |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 610 Регистрация: 3.4.2006 Репутация: 2 Всего: 23 |
response.sendRedirect нужно вставить после выполнения записи в файл, т.е. сервлет,
сделав сделав свое дело должен перенаправить браузер на исходную страницу(или на какую-то другую страницу, какую ты посчитаешь нужным). Методу sendRedirect нужно передать УРЛ этой страницы. Добавлено через 1 минуту и 48 секунд Перенаправляй на тот УРЛ, который тебе нужен... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |