私はmenulinksの数、セッションBeanに関連付けられている各を持っています。 Beanはセッション中であるため、異なるメニューリンク間を移動すると値が保持されます。たとえば、2つのメニューリンク、顧客プロファイルとアカウントの詳細があるとします。顧客プロファイルでは、名と姓を入力して顧客の詳細を検索できます。口座詳細ページでは、顧客口座番号を入力することにより、顧客口座の詳細を取得することができます。この場合、ユーザーが無効なアカウント番号を入力すると、検証エラーが表示され、ユーザーが入力した顧客アカウント番号が画面に保持されます。ユーザーが顧客プロファイルリンクに移動して口座詳細画面に戻ると、以前に入力された口座番号がセッション範囲として表示されます。JSF - セッションスコープに管理対象Bean内の値をクリア
これを処理する最善の方法は何ですか?
- 私は、ユーザーが別のメニューのリンクに移動したときにセッションからBeanを削除するには
PhaseListener
のbeforePhase
にいくつかのコードを持つことができますか? - 私はセッションBeanに関連するメニューのリンクがクリックされるたびに、変数をクリーンアップするために呼び出すことができ、初期化ブロックのいくつかの並べ替えを持っているべきですか?
このシナリオを処理するための任意のベストプラクティスはありますか?
こんにちはBalusC、アプリケーション全体がセッションスコープのBeanを持っています。を使用してスコープを変更するには多大な労力が必要ですか?アプリケーションは現在、多くのajax機能を使用していません。アプリケーションがajax関連タグを使用してビュースコープに変換する必要がありますか? –
申し訳ありませんが、最初からアプリケーションがうまく設計されていないと、私は助けません。いいえ、Ajax機能は必須ではありません。 – BalusC
ありがとうBalusC - いつものようにとても貴重なチップ。セッションスコープでマネージドBeanを使用する時期はいつですか?例はありますか? –