1

JSF で表示したいwithSessionListenerの値をいくつか設定したいと思います。@ManagedBeanSession scope

4

1 に答える 1

3

マネージド Bean インスタンスを自分で作成する必要があります。

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

セッションスコープにすでに存在する場合、JSFはそれを再利用します(ご覧のとおり、JSFの「セッションスコープ」は の属性によって表されるカバーの下にありますHttpSession)。この方法では anyは呼び出されず、、 など@PostConstructによって注入される必要のある依存関係はまったく注入されないことに注意してください。あなたもそれを自分で行う必要があります。@ManagedProperty@EJB

設計技術的には、コンストラクターまたは@PostConstructバッキング Bean クラス自体のメソッドでジョブを実行する方がはるかに優れています。

@ManagedBean
@SessionScoped
public class Bean {

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

}
于 2012-07-02T13:53:45.177 に答える