0

ユーザーがデータを入力して「保存」ボタンを押すページがあります。データはデータベースに保存されます。ページを更新して、新しいデータをデータベースに反映させたいと思います。マネージド Bean を使用していますが、ページを自動的に更新するにはどうすればよいですか?

4

3 に答える 3

3

私の頭に浮かぶ2つのオプションがあります:

  1. JSFナビゲーションルールを利用する
  2. レンダリングされた属性を使用する

広告1)

「保存」をクリックした後に移動するページを定義します。そのために、実際にデータをDBに保存するためのアクションは、actionListenerまたはとして定義されたメソッドに入ります。保存プロセスの結果に応じて次のページを作成する場合は、として定義されますaction

ナビゲーションルールはfaces-config.xmlで定義されます。特定のアクションに一致するナビゲーションルールがない場合、現在のページが再表示されます(ただし、この更新を行った経験から、一般的なHTML更新とは異なります)。

広告2)

同じページにいくつかのリストまたはデータテーブルがBeanのモデルに設定されている場合、保存ボタンでtrueに設定されたキーワードを使用している場合を除き、変更が自動的に表示されます。immediate

さらに、Beanでブール値に設定されたプロパティを持つ、選択したコンテンツを含むパネルを検討することもできます。これはrendered、保存プロセス内でトリガーされるため、保存を押した後にのみコンテンツが表示されます

于 2009-10-13T06:39:12.680 に答える
1

IceFacesのAJAXプッシュ機能を利用できます。これにより、クライアントの再レンダリングが初期化されます。

推奨される(そして最も簡単な)方法は、マネージドBeanでSessionRenderAPIを使用することです。

SessionRenderer.addCurrentSession("myGroup");
SessionRenderer.render("myGroup");

詳細については、Icefaces開発者ガイドを参照してください。

于 2009-10-28T11:28:49.590 に答える