2012-03-31 11 views
1

私はかなり面を使って私のURLとImを書き換えます。com.ocpsoft.pretty.faces.rewrite.Processor; URLをロードしている間にこのフィルタが何回かインボークされていることに気が付いたので、私のDBにアクセスしていくつかのデータをロードすると、これは非常に非効率的です。prettyfacesプロセッサのライフサイクル

私が望むのは、applicationScopeにプロセッサーを置いて、すべてのユーザーが使用できないようにして、私のサービスビーンズを何回か作成する必要はありません。

提案がありますか?

<context-param> 
    <param-name>com.ocpsoft.pretty.DEVELOPMENT</param-name> 
    <param-value>false</param-value> 
</context-param> 

詳細はthis threadを参照してください:それはProcessorに該当するのですが、あなたは無効developmentモードを試す可能性がある場合

答えて

1

わかりません。

+0

残念ながら、開発モードを無効にすると、ここで何の効果もありません。この特定の機能は、devモードとprodモードの間の動作を変更しません。 – Lincoln

+0

ありがとう、少なくとも私のパフォーマンスを向上させます。 – IturPablo

+0

@IturPablo、彼は周りにいる間リンリンを捕まえるほうがいい、誰も彼よりも優れている人は誰も知りません、彼は 'PrettyFaces'の著者です)) – Osw

1

カスタムプロセッサは、リクエストごとに一度作成されます - https://github.com/ocpsoft/prettyfaces/blob/3.x/core/src/main/java/com/ocpsoft/pretty/faces/rewrite/processor/CustomClassProcessor.java

あなたは、構成要素は、アプリケーション限り生きたい場合は特に、このような統合を行うことができるようにする必要がある場合は、その後、私はPrettyFacesプロセッサーはこれには使えますが、それほどフレキシブルではないのに対して、これは非常にフレキシブルではないので、あなたが何をしようとしているのかを尋ねるかもしれません...

OCPsoft Rewrite - URLRewriteFilter(PrettyFaces 4のコア)あなたの設定に加えて、PrettyFacesのプロセッサーでこれまでに持っていたよりも、よりシンプルなものを作っています。 CDI統合を使用して構成をスコープしたり、データベースアクセスクラスを注入したりすることはできません。

https://github.com/ocpsoft/rewrite/tree/master/integration-cdi

あなたは(それが解放されたとき、またはPrettyFaces4)書き換え、今日を使用してより多くの制御を持っています

+0

こんにちは、私はすでにスプリング依存症を注射することができます。だから私はHttpConfigurationProviderから拡張する場合、私はそれの範囲を設定することができるでしょうか? – IturPablo

+0

getConfiguration()メソッドを実装し、ConfigurationBuilder.create()...(ここにルールを追加)を返すだけです。 – Lincoln