1

大きなフォームを複数の複合コンポーネントに分割したい (CC を再利用するため)。1 つの主要なページ (ビジネス プロセス ページ) で、ユーザーは 4 つの CC 間を移動できる必要があります。必ずしも順番通りではありません。ユーザーは、主要なページのブレッドクラムを使用して 1 から 4 にジャンプするか、矢印を使用して順番に前後に移動できます。

要件:

  1. すべてのナビゲーション アイテム (矢印とブレッドクラム) は、メイン ページに配置する必要があります。
  2. 主要なページは決してリロードしてはなりません。CCのみ。
  3. ユーザーは、提供されたデータを失うことなく、サイトを一時的に離れることができます (これらのページには多くのフィールドがあるため)。

一流のアプローチとは?

シェル 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を含む)はありますか?

4

1 に答える 1

0

回答が非常に遅くなります。JSF と RichFaces でパンくずリストを実装するより良い方法がある場合は、お知らせください。

RichFaces 自体は、MyFaces の Trinidad によって提供されるような BreadCrumbs コンポーネントを提供しません。ブレッドクラムのような構造を作成する別の方法は、画像とリンクを動的に追加し、このグリッドをバッキング Bean にバインドすることです。ユーザーが特定の種類の操作を行った後、あるページから別のページに移動すると、新しいコンポーネントと対応する画像をこのグリッドに追加して、グリッドを再レンダリングできます。

于 2013-04-27T14:14:43.647 に答える