ディレクトリ内のフォルダを表示するページがあります。これは Windows エクスプローラーと同じように機能しますが、私のページはデータテーブルを使用してフォルダーを表示します。ユーザーがフォルダー名をクリックしてフォルダーにドリルダウンすると、同じページが再表示されますが、新しいデータを持つバッキング Bean の新しいインスタンスが表示されます。バック Bean は View スコープの Bean です。JSF マネージド Bean ではなく、Spring のカスタム ビュー スコープを使用する Spring マネージド Bean です。ブラウザーの [戻る] ボタンを使用してこのページに戻ると、ブラウザーは GET 要求を発行してページを再レンダリングします。
問題は、ブラウザーに戻って、現在のフォルダーではなく、現在の最後のフォルダーに関連するデータをページにレンダリングすることです。現在、ブラウザーの戻るボタンを押すと、Bean の新しいインスタンスが作成され、現在のフォルダー (セッションに保存されている) で初期化されます。View スコープの Bean が戻るボタンの送信 (つまり、新しいインスタンスの作成ではない) で復元できることを望んでいましたが、Spring 管理の Bean であるため、それができない可能性があることに気付きました。ページのviewIdと一緒にBeanをキャッシュする方法、またはJSF Managed Beanの使用に切り替える方法についてのアイデアはありますか? 可能であれば前者のアプローチを希望しますが、後者のアプローチが機能するかどうかを知りたいです。