起動時にすべてのデータをロードするバッキング Bean を使用してビューをセットアップしました。すべてのメソッドは一定時間であり、一貫して動作することを確認するためにタイマーを追加しました。入口/出口時間を測定する ServletRequestListener があります。
問題: ページをロードすると、ページの一部をレンダリングする Ajax リンクがいくつかあります (ViewScope Bean の状態を変更せずに)。これらの呼び出しには 90 ミリ秒から 600 ミリ秒かかり、ajax リンクをクリックすると時間が短縮されます。誰かが私の調査をどこに向ければよいか教えてもらえますか? これは、ランダムな時間でのビューのシリアル化またはビューの再コンパイルが原因でしょうか?
Mojarra 2.1.19 で JSF2、Tomcat 7 を使用する
web.xml 抽出
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value>
</context-param>
<context-param>
<param-name>javax.faces.PARTIAL_STATE_SAVING</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.developmentMode</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.compressViewState</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value>
</context-param>