|
|
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Есть страница page1.jsp = мапится в браузере как /page/1 на ней форма - она делает сабмит на сервлет action1 в нем идет разбор параметров и если все ок! то надо перейти на страницу page2.jsp мапится в браузере как /page/2 вопрос в том что когда я делаю в севрлете : response.sendRedirect - то теряется возможность передать что то на page2.jsp через request.setAttribute можно добавить несколько параметров в url - но это будет выглядеть не очень красиво . вопрос как мне передать набор параметров в page2.jsp через response.sendRedirect ? может есть способ ? использовать загловки итд ? или есть способ сделать forward на page2.jsp и каким то образом поменять url в браузере ? к примеру если возникла ошибка при вводе данных на page1.jsp , то я просто делаю : request.setAttribute("error"," описание ошибки ") request.getRequestDispatcher(PagesUrl. page1).forward(request, response); return; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 10:37:35 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
В сессию положить request.getSession().setAttribute() Или в куки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 10:47:39 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Спасибо! положить в сессию это хорошее компромиссное решение. куки не хочется таскать туда сюда , тем более когда их много . Хотя тоже хорошее решение. обычно в сессию кладу что то важное, не подумал что можно положить и мусор :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 10:52:04 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Atum1Спасибо! положить в сессию это хорошее компромиссное решение. куки не хочется таскать туда сюда , тем более когда их много . Хотя тоже хорошее решение. обычно в сессию кладу что то важное, не подумал что можно положить и мусор :) Куки лучше масштабируются, чем атрибуты сессии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 10:55:33 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, а может быть есть ссылки на какие-нибудь бенчмарки или просто статьи про масштабируемость cookie vs session attribute? У меня есть ощущение, что такие вещи могут играть роль только когда счет параллельных сессий идет на десятки-сотни тысяч, а в enterprise обычно нагрузка несколько по меньше (опять же речь ведь не идет о складывании в сессию объекты мегабайтами раз уж cookie рассматриваются как альтернатива). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 11:07:27 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
я так понимаю что под масштабируемостью понимается тот факт, что если "мусор" лежит в куках - то клиенту глубоко пофиг если вдруг нода на которой он работал упадет, и балансировщиком его перекинет на вторую ноду. Куки доступны всегда пока клиент доступен. Ну и немаловажно что серверу не придется реплицировать мусор в сессии, что тоже очень гуд. С куками одна беда - их легче подделать, но если это не важные данные, а именно что мусор - то куки лучше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 11:16:29 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
just_vladimirа может быть есть ссылки на какие-нибудь бенчмарки или просто статьи про масштабируемость cookie vs session attribute? У меня есть ощущение, что такие вещи могут играть роль только когда счет параллельных сессий идет на десятки-сотни тысяч, а в enterprise обычно нагрузка несколько по меньше (опять же речь ведь не идет о складывании в сессию объекты мегабайтами раз уж cookie рассматриваются как альтернатива). Какие ещё бенчмарки? Если у вас единственный сервер на 100 пользователей, то особо без разницы. Если у вас кластер на тысячи пользователей, то разница существенна. Для failover сессию нужно реплицировать на дублирующую ноду. Иногда на несколько. Это дополнительные затраты. Чем больше мусора и полезной нагрузки в сессии, тем дороже репликация. Некоторые сервера даже тупо делают репликацию на все ноды в кластере. Что вообще за гранью. Куки, же клиент таскает с собой. Даже не обязательно куки. ASP.NET, например, по-умолчанию часть атрибутов держит в скрытом поле. В эпоху single page web applications даже в этом не обходимости нет. Но у вас, правда, много страниц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 11:26:10 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
забыл никС куками одна беда - их легче подделать, но если это не важные данные, а именно что мусор - то куки лучше Их можно подписать\зашифровать с определенным временем жизни. Так что единственный способ взломать будет только через полчение ключа с сервера. А ключ из хранилища утянуть даже сложнее чем дамп базы данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 11:28:44 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
BlazkowiczКакие ещё бенчмарки? Если у вас единственный сервер на 100 пользователей, то особо без разницы. Если у вас кластер на тысячи пользователей, то разница существенна. Для failover сессию нужно реплицировать на дублирующую ноду. Иногда на несколько. Это дополнительные затраты. Чем больше мусора и полезной нагрузки в сессии, тем дороже репликация. Некоторые сервера даже тупо делают репликацию на все ноды в кластере. Что вообще за гранью. В мире существует только две крайности один сервер на 100 пользователей и огромный кластер на тысячи? Я и хотел понять, начиная с какого количества пользователей и объема хранимых данных начинаются проблемы хранения на сервере? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 13:33:35 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
just_vladimirВ мире существует только две крайности один сервер на 100 пользователей и огромный кластер на тысячи? Я и хотел понять, начиная с какого количества пользователей и объема хранимых данных начинаются проблемы хранения на сервере? Начиная с того момента как у вас появляется вторая нода, у вас появляются и затраты на репликацию. Тут не может быть никаких бенчмарков, потому что всё индивидуально для проекта. Смысла искать пограничное значение, когда клиентская сессия становится выгоднее серверной, я тоже не вижу. Выбор решения достаточно очевиден из требований проекта. Если у вас ERP под отдельные офисы. Там максимум несколько сотен сотрудников на офис. Даже если больше, можно всегда выделить сервер на отдел. А вот если у вас public сервис, социальная сеть, game-server, то вы уже можете ожидать наплыва посетителей. Вот тут уже требования к масштабированию другие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 13:44:14 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Blazkowiczjust_vladimirВ мире существует только две крайности один сервер на 100 пользователей и огромный кластер на тысячи? Я и хотел понять, начиная с какого количества пользователей и объема хранимых данных начинаются проблемы хранения на сервере? Начиная с того момента как у вас появляется вторая нода, у вас появляются и затраты на репликацию. Тут не может быть никаких бенчмарков, потому что всё индивидуально для проекта. Смысла искать пограничное значение, когда клиентская сессия становится выгоднее серверной, я тоже не вижу. Выбор решения достаточно очевиден из требований проекта. Если у вас ERP под отдельные офисы. Там максимум несколько сотен сотрудников на офис. Даже если больше, можно всегда выделить сервер на отдел. А вот если у вас public сервис, социальная сеть, game-server, то вы уже можете ожидать наплыва посетителей. Вот тут уже требования к масштабированию другие. согласен полностью с Blazkowicz - для каждой задачи своя реализация ... если это система для офиса где 100 работников она может простить многое ... если это сайт где полмиллиона уникальных посетителей в день - то тут надо думать , отключать сессии на страницах на которых они ненужны, кешировать собранные страницы , использовать ajax и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 12:03:40 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Atum1отключать сессии на страницах на которых они ненужны интересно... Я вот не знаю как и что это дает, можно поподробней? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 12:17:02 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Atum1можно добавить несколько параметров в url - но это будет выглядеть не очень красиво . странно что счас на это кто-то обращает внимание. Учитывая "тупизну" пользователей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 12:27:55 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
am_sasa, если у вас есть страницы поддержка сессий на которых не нужна , то для экономии ресурсов - установите флаг Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. так же вы можете настроить , оттюнинговать свою страницу другими параметрами http://ru.wikipedia.org/wiki/JSP ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 12:28:37 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Petro123Atum1можно добавить несколько параметров в url - но это будет выглядеть не очень красиво . странно что счас на это кто-то обращает внимание. Учитывая "тупизну" пользователей. Это так сказать мой "загон" как разработчика :) хочется чтобы стиль был во всем , в том числе и в URL - если уж решил что все будет как REST URL - то надо этого придерживаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 12:31:00 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Atum1, ты учитывай, что удобно передать ВСЕ входные с урл своему товарищу по почте или сохранить на десктопе. Тут главное не красота, а тот же вид странички. (Функционал) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 12:43:16 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Petro123Atum1, ты учитывай, что удобно передать ВСЕ входные с урл своему товарищу по почте или сохранить на десктопе. Тут главное не красота, а тот же вид странички. (Функционал) Пример : сайт РЖД - который на java написан : передавать не удобно , строки очень длинная ... если сделать urlrewrite - через либу http://tuckey.org/urlrewrite/ все стало бы намного лучше :) http://pass.rzd.ru/timetable/public/ru?STRUCTURE_ID=735&layer_id=5354&refererVpId=1&refererPageId=704&refererLayerId=4065#dir=0|tfl=3|checkSeats=1|st0=МОСКВА|code0=2000000|dt0=29.05.2013|st1=САНКТ-ПЕТЕРБУРГ|code1=2004000|dt1=30.05.2013 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 12:49:02 |
|
||
|
response.sendRedirect и передача параметрорв
|
|||
|---|---|---|---|
|
#18+
Atum1, что то я не пойму. Как ты передашь те же параметры соседу на комп без их передачи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 12:55:12 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38276485&tid=2129267]: |
0ms |
get settings: |
17ms |
get forum list: |
22ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
46ms |
get topic data: |
19ms |
get forum data: |
5ms |
get page messages: |
82ms |
get tp. blocked users: |
2ms |
| others: | 346ms |
| total: | 553ms |

| 0 / 0 |
