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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JSF - Lifecycle: как работает! 
:(
    Опции темы
medi
Дата 1.4.2008, 09:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Привет Форум!

Помогите разобраться с JSF-Lifecycle. Я пишу дипломмную работу о Framework "Jboss Seam".
Этот Фраймворк связывает JavaEE стандарт-технологии JSF и EJB3.
Для этого он суёт свои руки в GUI-Framework JSF и меняет там кое-что в свих целях. 

Я для начала пытаюсь разовраться в JSF-Lifecycle. 
Что происходит на первой стадии Restore View? В книгах описяваеться,
 что в этой стадии ему надо востоновить View-Object последнего запроса. Если страница запрашиваеться первий раз, то View-Object'а для этой страницы ещё нету, поэтому создаёться новый View-Object, т.е. пустое дерево компонентов, и заноситься в FacesContext.

Если же дерово уже есть в FacesContext, тогда загружаеться этот View-Objekt.

Но, когда я заглянул в source JSF, чтоб посметреть, что он там конкретно делает на стадии Restore View, то обнаружил там 3 разный исхода.

1) log.debug("Found a pre created view in FacesContext");
2) log.debug("New request: creating a view for " + viewId);
3) log.debug("Postback: Restored view for " + viewId);

Что конкретно там происходит? Помогите разобраться?!

Зарание спасибо


PM MAIL   Вверх
Kangaroo
Дата 1.4.2008, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

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



Может:

Цитата(medi @  1.4.2008,  08:23 Найти цитируемый пост)
1) log.debug("Found a pre created view in FacesContext");

Гет запрос к странице, но не первый. Уже обращались. Вытягивается вью из контекста.


Цитата(medi @  1.4.2008,  08:23 Найти цитируемый пост)
2) log.debug("New request: creating a view for " + viewId);

Первый Гет запрос к странице, надо создать полностью новый вью.


Цитата(medi @  1.4.2008,  08:23 Найти цитируемый пост)
3) log.debug("Postback: Restored view for " + viewId);

Пост запрос - востанавливаем вью, который показали при гете.

Но это только предположения  smile гуру поправят


--------------------
Lost....
PM MAIL MSN   Вверх
medi
Дата 1.4.2008, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Aaa ясно, это Пост и Гет.

Спасибо Kangaroo!

А что если например Пользоватеть сделал запрос: www.site.de/login.jsf

сработало: log.debug("New request: creating a view for " + viewId);

Оставил всё и на следующий день кликнул на ЛОГИН-Button

сработает: log.debug("Postback: Restored view for " + viewId); ?

Добавлено @ 12:46
И ещё вопрос, извенайте если он глупый, я просто в новичёк в разработке веб-приложенний под Java EE.

а этот FacesContext это Objekt? Он создаёться для каждого пользователя?

Это сообщение отредактировал(а) medi - 1.4.2008, 12:47
PM MAIL   Вверх
Dude03
Дата 1.4.2008, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(medi @  1.4.2008,  12:42 Найти цитируемый пост)
Оставил всё и на следующий день кликнул на ЛОГИН-Button

сработает: log.debug("Postback: Restored view for " + viewId); ?

если сессия не станет expired, то ответ - да
Цитата(medi @  1.4.2008,  12:42 Найти цитируемый пост)
И ещё вопрос, извенайте если он глупый, я просто в новичёк в разработке веб-приложенний под Java EE.

а этот FacesContext это Objekt? Он создаёться для каждого пользователя?

да, смотри сырцы FacesServlet
PM MAIL   Вверх
medi
Дата 1.4.2008, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Dude03 Спасибо за ответ.

Ясно, значить Framework-JSF сoздаёт для каждого пользователя Object класса FacesContext и держит его в памяти(RAM?) пока не кончиться для этого пользователя сессия. 

T.e. если 10000 пользователей сделали запрос, то будет создано 10000 объектов класса FacesContext

так?

Это сообщение отредактировал(а) medi - 1.4.2008, 16:50
PM MAIL   Вверх
alexsmirnov
Дата 3.4.2008, 08:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



FacesContext создается для каждого запроса, и уничтожается по его окончании.
А вообще лучше всего почитай спецификации - http://jcp.org/aboutJava/communityprocess/...r252/index.html , там очень подробно описано.
Дипломная работа - О Seam Framework ? Я бы еще понял "Framework похожий на Seam" ... Прошу прощения, но мелко как-то...
PM MAIL   Вверх
medi
Дата 3.4.2008, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Привет alexsmirnov,
спасибо за ответ.

На счёт дипломной, я считаю нормальная дипломная:
В теоретической части я опишу framework, его инновативные концепты,
сравню его немножно с другими(spring) и т.д.

А в практической части реализую веб-приложение под Симом.

Так что нормальная дипломка, мой проф тоже сказал, что нормально, даже сложная.
Там где я учусь даётся 4 месяца на всё это дело. 
PM MAIL   Вверх
alexsmirnov
Дата 3.4.2008, 21:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Не обращай внимание на ворчание,  просто тут послушал выступление одного студента из Stanford'a,  но наверное все-таки уровень сравнивать некорректно smile
Могу дать маленькую наводку. Gavin King, автор Seam, под впечатлением идей Google guice http://code.google.com/p/google-guice/ , накропал спецификацию Web Beans ( см например http://in.relation.to/Bloggers/GavinsBlog/Tag/Web+Beanshttp://jcp.org/en/jsr/detail?id=299 ). Только он так до реализации и не добрался. Достойная тема - попробовать набросать реализацию, можно и получить некоторую известность, и со всей тусовкой познакомится.
 Хотя это конечно гораздо сложнее....
PM MAIL   Вверх
medi
Дата 3.4.2008, 22:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Я не обращаю на ворчания, а даже приветствую  smile 

Я не понял тебя, как до реализации не добрался? Он же реализовал это дело?
Они создали Framework, который связывает JSF и EJB3.

И сделал запрос, чтоб этот прикол включили в спецификацию Java EE под именем "Web Beans".

Вот только включили или нет я не знаю, вроде все Пацаны согласны  smile 
http://jcp.org/en/jsr/results?id=3865

Я тебя не много не до понял, что ты имеешь ввиду?

Добавлено @ 22:46
Цитата(alexsmirnov @ 3.4.2008,  08:27)
FacesContext создается для каждого запроса, и уничтожается по его окончании.

А сохраняется только Дерево Компонентов или как?
Что-то я совсем запутался  smile 



Это сообщение отредактировал(а) medi - 3.4.2008, 22:59

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  bild1.jpg 19,75 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.1076 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


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

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