大きなフォームを複数の複合コンポーネントに分割したい (CC を再利用するため)。1 つの主要なページ (ビジネス プロセス ページ) で、ユーザーは 4 つの CC 間を移動できる必要があります。必ずしも順番通りではありません。ユーザーは、主要なページのブレッドクラムを使用して 1 から 4 にジャンプするか、矢印を使用して順番に前後に移動できます。
要件:
- すべてのナビゲーション アイテム (矢印とブレッドクラム) は、メイン ページに配置する必要があります。
- 主要なページは決してリロードしてはなりません。CCのみ。
- ユーザーは、提供されたデータを失うことなく、サイトを一時的に離れることができます (これらのページには多くのフィールドがあるため)。
一流のアプローチとは?
シェル ah:panelGroup 内で CCs インスタンスをレンダリングする @SessionScoped マネージド Bean (コントローラー) を作成します。
<h:panelGroup id="businessProcessForm" layout="block">
<my:composite rendered="#{controllerBean.navigateToCC}" />
</h:panelGroup>
<h:commandButton value="load previous CC" action="#{controllerBean.setNextCC('CC1')}">
<f:ajax render="businessProcessForm" />
</h:commandButton>
<h:commandButton value="load next CC" action="#{controllerBean.setNextCC('CC3')}">
<f:ajax render="businessProcessForm" />
</h:commandButton>
ブレッドクラムのリンクを設定するにはどうすればよいですか (CC の数に応じて作成する必要があります)。前/次のリンクを設定するにはどうすればよいですか? 矢印またはブレッドクラムで h:panelGroup を設定するにはどうすればよいですか?
確かな答え(Richfacesを含む)はありますか?