Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / вопрос по JSF / 3 сообщений из 3, страница 1 из 1
01.11.2005, 13:56
    #33355231
sidh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по JSF
Подскажите пожалуйста как в JSF положить объект в сессию и соответственно извлечь ?

Заранее спасибо!
...
Рейтинг: 0 / 0
01.11.2005, 14:20
    #33355330
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по JSF
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
/**
     * <p>Return the <code>FacesContext</code> instance for the
     * current request.
     */
     public   static  FacesContext context() {
         return  (FacesContext.getCurrentInstance());
    }

/**
     * Поиск параметра в сессии
     */
     public   static  String findSessionParameter(String key){
         return  (String)context().
                getExternalContext().
                getSessionMap().
                get(key);
    }

/**
     * Кладем чего нибудь в сессию
     */
     public   static   void  setSessionParameter(String key, Object value){
        context().
                getExternalContext().
                getSessionMap().
                put(key, value);
    }
    
    /**
     * Удаление параметра из сессии.
     */
     public   static   void  removeSessionParameter(String key){
        context().
                getExternalContext().
                getSessionMap().
                remove(key);
    }

в некоторых случаю очень удобно делать через звязывание (binding).
пример из Сановского туториала

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
/**
     * <p>Return the <code>ShoppingCart</code> instance from the
     * user session.</p>
     */
     protected  ShoppingCart cart() {
        FacesContext context = context();
        ValueBinding vb =
                context.getApplication()
                .createValueBinding("#{cart}");
        
         return  ((ShoppingCart) vb.getValue(context));
    }

предварительно, объект ShoppingCar описывается в файле faces-config.xml, примерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
<managed-bean>
    <description>
      Create a shopping cart in session scope the first
      time it is referenced.
    </description>
    <managed-bean-name>cart</managed-bean-name>
    <managed-bean-class>cart.ShoppingCart</managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
  </managed-bean>
можно указать др. область видемости и параметры инициализации. В этом случае в сессию ничего не надо класть, при первом обращении к методу cart() все само положится.
...
Рейтинг: 0 / 0
01.11.2005, 14:28
    #33355368
sidh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по JSF
спасибо!
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / вопрос по JSF / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]