ページで使用されているすべてのBeanが、ページの小さな部分を更新するときに不必要にインスタンス化されていることに気づきました。OK、それらはリクエストスコープであるため、すべてのリクエストでインスタンス化されますが、更新されているページのその部分でそれらのBeanが必要な場合にのみ実行する必要があります。ではない ?
なぜJSFでこの悪い設計なのですか?
アップデート:
この動作を引き起こしている本当の原因を見つけましたf:event type="preRenderView"
。Webページの特定の場所にありました。これにより、実際には、リスナーを呼び出すためにこれらのBeanが再インスタンス化されました。修正はf:event type="preRenderComponent"
代わりに使用することでした。これにより、各リクエストでの不要なBeanのインスタンス化のほとんどが減少しましたが、それでもいくつかの不要なBeanのインスタンス化が見られます。