バッチ・モードでのコール間データの同期化

データ・モデルを適切に設定するため(たとえば、バインド変数値をビュー・オブジェクトに設定するため)にデータ・コントロールに情報を渡す必要がある場合、super.prepareModel()をコールする前にDataActionのオーバーライドされたprepareModel()メソッドでこれを実行できます。これにより、バッチ・モード・アプリケーション・モジュールが中間層オブジェクトと自動的に同期化されます。

コントローラ・レイヤーにあるDataActionコードのビュー・オブジェクトからデータをプログラムによって参照する必要がある場合は、prepareModel()をコールした後にDataActionライフサイクル・メソッドでこれを実行します。ユーザー記述のイベント・ハンドラ・メソッド(onYourEventName()など)またはinvokeCustomMethod()ライフサイクル・メソッドは、prepareModel()へのコールの後に実行されます。

可能であれば、データ関連のすべての設定および操作を1つのアプリケーション・モジュール・カスタム・メソッドに一元化し、すべての設定が中間層への1回のラウンドトリップで実行できるようにしてください。

クライアント/ビュー・コードがバインディングAPIにアクセスする場合は、bindingContainer.refreshControl()へのコールにより、すべてのADF Business Componentsアプリケーション・モジュールまたはバッチ・モード・アプリケーション・モジュールで、sync()が実行されます。

バインディングでは、一部の処理によりsync()が明示的にコールされます。

ADF Swing

prepareModel()を使用した前述の方法は、ADF Swingでは使用できないことに注意してください。これは、ADF Swingにはそのようなフェーズやラウンドトリップ・チェックポイントがないためです。同じ方法を使用するには、対応するコードをボタン動作に記述し、データのサービス要求用のモデルを用意する必要があります。


クライアントからのリクエストのバッチ処理
Oracle ADF Business Componentsのバッチ・モードについて
問合せデータ同期化の変更
バッチ・モードでのrangeSizeの設定
バッチ・モードと即時モードの違い