おそらくこれは私がドキュメントを見つけることができるはずの質問ですが、私は多くの専門用語に慣れていないので苦労しています。
基本的にはJSF2を使用しています。SessionScoped Beanがあり、postconstruct init()メソッドを使用しています。セッションが開始するたびにinit()メソッドが呼び出されるようにしたいのですが、これは正常に機能しますが、ビューが読み込まれるたびにも呼び出されるようにします。
これを行う簡単な方法はありますか?
ありがとう!
置き換え@PostConstruct
によって<f:event type="preRenderView">
。
<f:event type="preRenderView" listener="#{sessionScopedBean.init}" />
ただし、@SessionScoped
1つと1つという2つのBeanに分割することをお勧めします@ViewScoped
。次に@ViewScoped
、代わりにビュー内の1つを参照し、その@SessionScoped
プロパティとして1つを挿入し@ViewScoped
ます。
@Named
@ViewScoped
public class ViewScopedBean {
@Inject
private SessionScopedBean sessionScopedBean;
@PostConstruct
public void init() {
// ...
}
// ...
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加