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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> managed beans, видимость в сессии 
V
    Опции темы
skhilkov
Дата 27.4.2007, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Здрасте! Объясните кто знает плиз(в какой момент) как создается managed bean, scope  которого session? Как я понял он создастся при создании сессии? Значит есть у меня бин:
Код

<managed-bean>
        <managed-bean-name>userBean</managed-bean-name>
        <managed-bean-class>realty.UserBean</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>


Есть у меня первая страница проекта, по щелчку кнопки выполняется проверка данных, соответственно, если они верны, я создаю сессию, и вот здесь я хотел бы занести в вышеуказанный бин некоторые данные, но строчка
Код

UserBean userBean = (UserBean)context.getExternalContext().getSessionMap().get("userBean");

возвращает null.......  помогите разобраться......


--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
Maksym
Дата 27.4.2007, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


.
***


Профиль
Группа: Участник Клуба
Сообщений: 1456
Регистрация: 19.8.2005
Где: Odessa, Black Sea

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



skhilkov
JSF создает managed beans by demand (по требованию), то есть тогда, когда они необходимы внутри jsf life cycle. До этого момента их нет в соответствующем scope и, соответственно, обратится к ним из кода нельзя. 
PM MAIL   Вверх
Maksym
Дата 27.4.2007, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


.
***


Профиль
Группа: Участник Клуба
Сообщений: 1456
Регистрация: 19.8.2005
Где: Odessa, Black Sea

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



Либо обратись к нему раньше из jsf, либо создай и положи в сессию вручную (лучше).

ЗЫ. Используй для xml -- xml код при написании поста (легче читать)  smile 



Это сообщение отредактировал(а) Maksym - 27.4.2007, 13:05
PM MAIL   Вверх
skhilkov
Дата 27.4.2007, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата

Либо обратись к нему раньше из jsf, либо создай и положи в сессию вручную (лучше).

Если ложить его туда вручную, то его надо убрать из описания?


--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
Maksym
Дата 27.4.2007, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


.
***


Профиль
Группа: Участник Клуба
Сообщений: 1456
Регистрация: 19.8.2005
Где: Odessa, Black Sea

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



skhilkov
Нет, зачем, ты ведь собираешся обращаться к нему из jsf по псевдониму userBean. Просто jsf возьмет его готовый из scope.
PM MAIL   Вверх
skhilkov
Дата 27.4.2007, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Блин, вообще запутался...... пытаюсь сделать вот так:
Код

UserBean userBean = (UserBean)context.getExternalContext().getSessionMap().get("userBean");
        if (userBean == null)
        {
            userBean = new UserBean(); 
            System.out.println("5null");
        }
        userBean.setId(curUser.getId());
        userBean.setLogin(curUser.getLogin());
        userBean.setPassword(curUser.getPassword());
        userBean.setPrivelegies(curUser.getPrivelegies());
        System.out.println("6");
        context.getExternalContext().getSessionMap().put("userBean", userBean);
        System.out.println("7");


При этом происходит следующее - все системауты выводятся, никакой эксепшн не ловится, но выдается страница с ошибкой - 
"The server encountered an internal error () that prevented it from fulfilling this request." Ничего не понимаю..........  smile 
Да, если это все закомментить - все хорошо.......

Это сообщение отредактировал(а) skhilkov - 27.4.2007, 19:27


--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
skhilkov
Дата 27.4.2007, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Извиняюсь, все работает, спасибо огромное!!! Это просто на той странице ошибка была,,,,,,,, ох уж мне этот Веб Девелопер Пак..... ничего руками нельзя добаить - кинул текстовое поле, вручную прописал ему аттрибут value вместо binding, так он после этого создал еще один компонент с таким же именем такой же как был....... а вот когда в меню прописал это, все заработало ..... smile 


--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0503 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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