6

META-INFディレクトリにfaces-config.xmlを含むjarファイルを含むJSF 2アプリケーションがあります。faces-config.xml には、フェーズ リスナーの宣言が含まれています。jar ファイル自体を変更せずに、このフェーズ リスナーのインストールを防止したいと考えています。これは可能ですか?

4

1 に答える 1

4

faces-config.xmlサードパーティの JAR の特定の部分が解釈されるのをブロックすることはできません。

基本的に 2 つのオプションがあります。

  1. webapp独自faces-config.xmlの.metadata-complete="true"faces-config.xml

    <faces-config ... metadata-complete="true">
    

    これにより、サードパーティ JAR のクラスの注釈スキャンもスキップされることに注意してください。基本的に、webapp 独自の で使用したい特定の部分を再定義する必要がありますfaces-config.xml


  2. webapp のに登録するためのカスタムLifecycle実装を提供します。その実装では、それに応じてオーバーライドして、スキップまたは続行する前にチェックなどを実行します。LifecycleFactory<factory><lifecycle-factory>faces-config.xmladdPhaseListener()instanceof

于 2013-03-22T14:34:26.430 に答える