2012-07-02 3 views

ответ

3

Вам необходимо создать экземпляр управляемого bean-компонента самостоятельно.

Bean bean = new Bean(); 
bean.setSomething(something); 
event.getSession().setAttribute("bean", bean); // "bean" is managed bean name. 

JSF будет просто использовать его, если он уже существует в рамках сеанса (вы видите, JSF «сессии сфера» под одеялом, представленных атрибутами HttpSession). Обратите внимание, что таким образом любой @PostConstruct не будет вызываться, и любые зависимости, которые должны быть введены @ManagedProperty, @EJB и т. Д., Вообще не будут введены. Вам также нужно будет сделать это сами.

Designtechnically, намного лучше выполнить задание только в конструкторе или @PostConstruct метод самого класса бэк-компонента.

@ManagedBean 
@SessionScoped 
public class Bean { 

    @PostConstruct 
    public void init() { 
     // Here. 
    } 

} 
+0

Спасибо .. за отличную помощь.! –

+0

Добро пожаловать. – BalusC

 Смежные вопросы

  • Нет связанных вопросов^_^