私は次の構造を持っているとしましょう:
pageA.xhtml - ここでは、 pageBおよびpageC内で必要となる項目を選択できますが、pageEでは必要ありません。
pageB.xhtml - ここでは、pageAから選択されたアイテムを使用します。このページには selectBox といくつかのボタンもあります。selectBox から何かを選択すると、一部のボタンが無効になり、一部のテキストが表示されます。(このページを更新すると、同じ状態が再び必要になります)。pageB には 、いくつかのものをリストするpageDが含まれています。これで、 pageCに移動できます。また、 pageCのみに関連し、他のページには関連しないいくつかのオブジェクトも作成します。
pageC.xhtml - ここでは、pageBからオブジェクトを取得し、ユーザー入力に応じてそれを変更します。適用を押すと、変更を表示するpageBに戻ります。pageBから保存を押すと、変更が保存され、pageD ( pageBに含まれる) が更新されます。
pageD.xhtml - いくつかのものをリストするだけです。( pageB内にのみ含まれます)
- pageE.xhtml - このページはまったく異なるものを開始し、 pageAからの入力は必要ありませんが、直接pageCに移動できます。この場合、pageCはいくつかのものを隠す必要があります。
例がどういうわけか明確であることを願っています。実際、私は自分の質問を少し明確にするためにそれを作りました.異なるページ間でデータを渡し、実際の状態を保存するためのベストプラクティスが何であるかを知りたいです(戻ってきたときも同じ状態になります)。
また、一部のページでは必要であるが別のページでは必要ないデータをリセット/クリアする方法。たとえば、一部のデータは複数のページに必要ですが、一部はネストされたページ内でのみ必要です (最適な世界では、ネストされたページ内のデータは、それらを離れるときにクリアする必要があります)。
もちろん、必要なものをセッションに保存することもできますが、不要になったときにそれらのものを再度削除するように注意する必要があります。JSF と CDI は会話をサポートします。しかし、ここでの問題は、ネストされた会話を行うことができないことです。もちろん、リクエストパラメーターを使用してすべてを渡すこともできます..しかし、この場合、ページ内に ajax リクエストがある場合は注意する必要があります (常にすべてのパラメーターを送信する必要があると思います)。
CDIでJSF 2.0を使用しています。どんな答えでも大歓迎です。悲しいことに、コード例を提供することはできません..だから、自分の自己を十分に明確に表現できたことを願っています。
こんにちはククダス