2

私のアプリケーションでは、モデルとしてLoadableDetachableModelを持つSortableDataProviderでDefaultDataTableを使用しています。

これを使用して、一連のレコードを表示しました(たとえば、RecordListページ)。いくつかのレコードを追加または削除して、ページ RecordListを再度ロードすると、変更が表示されます。ただし、ブラウザの戻るボタンを使用して、以前にレンタルした RecordListページに移動すると(レコードを追加/削除する前)。DefaultDataTableには、まだ古いレコードのセットがあります。これは、レコードが削除されるときに大きな問題になります。

たとえば、レコードを削除して戻るボタンを押すと、表示しようとしているレコードがデータベースに存在しないため、ページが失敗します。追加しても、レコードのセットにリストされないため、問題は発生しません。

別のページには、LoadableDetachableModelを含むPageableListViewがあります。問題なく正常に動作します。

4

1 に答える 1

1

これについてできることは1つか2つあります。

まず、データプロバイダーが最新のデータを持っているかどうかを確認してください。

次に、ブラウザの戻るボタンが押されたときに、データプロバイダーのレコードセットが更新されていることを確認します。データプロバイダーに供給されたデータがコンストラクター以外のメソッドで更新されていることを確認してください。反撃したときにコンストラクターが呼び出されないためです。したがって、別の方法を使用する必要があります。理想的には、同じメソッドを使用できますが、コンストラクターと戻るボタンが押されたときに呼び出されます。

于 2013-03-27T11:26:46.587 に答える