たくさんの AJAX コンポーネントを含むかなりステートフルなページがあります。これらのコンポーネントのほとんどには動作があり、AJAX 要求を呼び出すための JavaScript コードを Java コードにレンダリングします。ページはステートレスではないため、リクエストごとにページのシリアル化が発生します。ここまでは順調ですね。
ただし、これらの AJAX 要求の一部はページをまったく変更しないため、ページのシリアル化は必要ありません。たとえば、(自作の) datagrid コンポーネントのフォワード キャッシング データです。これらのリクエストは継続的に呼び出され、各リクエスト中のページのシリアル化により遅延が発生します。
wicket-statelessなど、ステートレス wicket コンポーネントのプロジェクトがいくつかありますが、別の状況を解決します。ステートレス コンポーネントのリクエストは、ステートレス ページの新しいインスタンスで処理されます。既存のステートフル ページ インスタンスでリクエストを処理したいが、シリアル化は行わない。
これを自分で実装しようとしましたが、常にページに触れており、リクエスト処理後にシリアル化が発生するRequestCycleProcessor.resolve()
ため、requestParametersからページを検索することにハングしました。Session.getPage()
- Wicket でこれを実装するための例、アイデアはありますか?
それが理解できることを願っています:)