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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JSF: как передавать параметры от формы к форме? 
:(
    Опции темы
Dims
Дата 24.5.2008, 00:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

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



Что-то я не пойму.

Обычные HTML-параметры в JSF убрали. Переходы между страницами задаются в отдельном файле, причём каждый переход имеет уникальное имя. Операции с бинами, кроме как присваивать значения его свойствам или отображать их -- выполнять нельзя.

Как же передать информацию от страницы к странице?

У меня, в общем-то банальная ситуация. На первой странице выводится перечень категорий. Каждая категория -- это ссылка. Когда пользователь тыкает в эту ссылку, он попадает на вторую страницу, на которой должен быть выведен перечень статей этой категории.

Я сделал страницу viewContent и от неё по case с именем "select" определил переход на страницу viewCateg.

Сперва я подумал так: завёл бины для всей базы Content, для категории Categ и для статьи Article. Все эти бины на уровне сессии. Сделал у бина базы поле getCategs, которое выдаёт List<Categ>. Сформировал перечисление dataTable, работает. 

Теперь, как передать на вторую страницу информацию о том, что выбрал пользователь?

Сперва я думал, что как-то можно будет бин categ задать значением того, который выбран. Нельзя.

Потом я подумал, что выбранный бин Categ должен как-то запоминаться в бине Content. Но как?
PM MAIL   Вверх
Zamuta
Дата 24.5.2008, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Dims, по твоей теме есть отличная статья . На мой взгляд в твоём случае наиболее удобным будет управлять переходами через параметры запроса.
Цитата
Как же передать информацию от страницы к странице?

Ты ведь заранее знаешь что тебе нужно передать и куда т.е. общий сценарий? Вот тогда смотри:
Есть page1.jsp и page2.jsp , переходим с первой на вторую, а вообще не важно на какую, лишь бы она существовала. Но при этом, как ты говоришь нужно передать некую информацию в зависимости от ситуации. Предположим, что на page1.jsp у тебя список категорий, а на page2.jsp список статей в какой-то из категорий, тогда, чтобы увидеть список статей на page2.jsp из категории "name354" ты ставишь ссылку внутри page1.jsp вида page2.jsp?cat=name354, а если ещё хочешь, например кол-во статей на странице указать, тогда page2.jsp?cat=name354&val=20, а затем в бине ловишь эти параметры
Код

       getExternalContext().getRequest().getParameter("cat");
       getExternalContext().getRequest().getParameter("val");

И в зависимости от этого показываешь то или другое.

Также можешь использовать сессию для этих целей. 


--------------------
Thank you opensource.
PM MAIL ICQ   Вверх
necromancer
Дата 26.5.2008, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



использовать сессию нужно с умом (открыть 2 страницы одновременно будет проблематично).


--------------------
С уважением, 
                 Виталий Смык
----------------------------------------------------------------------------------------------
SCJP, SCWCD, OCA
http://dev.maryno.net/video/
PM MAIL WWW ICQ Skype   Вверх
Dims
Дата 31.5.2008, 01:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

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



Цитата(Zamuta @  24.5.2008,  17:06 Найти цитируемый пост)
И в зависимости от этого показываешь то или другое.

Ну так это получается уже не JSF, а простоё JSP, да ещё с Java-вставкой...
PM MAIL   Вверх
v2v
Дата 31.5.2008, 08:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1620
Регистрация: 20.9.2006
Где: Киев

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



Цитата(Dims @  31.5.2008,  01:38 Найти цитируемый пост)

Ну так это получается уже не JSF, а простоё JSP, да ещё с Java-вставкой... 

вы статью смотрели , которую вам Zamuta подсказал?
раздел "Passing GET parameters from JSF to backing beans" , так сказать чистый jsf ...
(но есть свои недостатки ... )


--------------------
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0648 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


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

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