Jar スキャンフィルタコンポーネント
目次
はじめに
Jar スキャンフィルタ要素は、アプリケーションに返される前にJar スキャナーからの結果をフィルタリングするコンポーネントを表します。 通常、一部またはすべてのタイプの スキャンに関係しないとわかっている JAR のスキャンをスキップするために使用されます。
Jar スキャンフィルタ要素は、Jar スキャナーコンポーネント内にネストできます。
たとえば、プラグイン可能な機能をスキャンするときに、追加の jar ファイルを指定できます。
<Context>
...
<JarScanner>
<JarScanFilter
pluggabilityScan="${tomcat.util.scan.StandardJarScanFilter.jarsToScan},
my_pluggable_feature.jar"/>
</JarScanner>
...
</Context>
Jar スキャンフィルタ要素が含まれていない場合、デフォルトの Jar スキャンフィルタ設定が自動的に作成されます。これは、ほとんどの要件で十分です。
属性
共通属性
Jar スキャンフィルタのすべての実装は、次の属性をサポートしています。
属性 | 説明 |
---|---|
className |
使用する実装の Java クラス名。 このクラスは、 |
標準実装
Jar スキャンフィルタの標準実装は、org.apache.tomcat.util.scan.StandardJarScanFilterです。 サポートする追加の属性(上記の共通属性に加えて)は、表にリストされています。
pluggabilitySkip、pluggabilityScan、tldSkip、tldScan属性の値は、ファイル名パターンのリストです。 パターンはカンマ(',')で区切られます。 パターンの先頭と末尾の空白文字は無視されます。 パターンは、大文字と小文字を区別して照合されます。 次の2つの特殊文字がサポートされています。
- '*' - ゼロ個以上の文字を表します。
- '?' - 1つだけの文字を表します。
プラグイン可能性スキャンから JAR を除外すると、ServletContainerInitializer が Web アプリケーション JAR(つまり、/WEB-INF/lib
にある JAR)からロードされなくなりますが、ServletContainerInitializer がコンテナ(Tomcat)からロードされるのを防ぐことはできません。 コンテナによって提供される ServletContainerInitializer がロードされないようにするには、コンテキストのcontainerSciFilter
プロパティを使用します。
属性 | 説明 |
---|---|
pluggabilitySkip |
Servlet 3.0 仕様で導入されたプラグイン可能な機能をスキャンするときにスキップする JAR ファイル名パターンのカンマ区切りリスト。 指定しない場合、デフォルトは |
pluggabilityScan |
Servlet 3.0 仕様で導入されたプラグイン可能な機能をスキャンするときにスキャンする JAR ファイル名パターンのカンマ区切りリスト。 指定しない場合、デフォルトは |
defaultPluggabilityScan |
プラグイン可能な機能をスキャンするときに、JAR をデフォルトでスキャンするかスキップするかを制御します。 |
tldSkip |
タグライブラリ(TLD)をスキャンするときにスキップする JAR ファイル名パターンのカンマ区切りリスト。 指定しない場合、デフォルトは |
tldScan |
タグライブラリ(TLD)をスキャンするときにスキャンする JAR ファイル名パターンのカンマ区切りリスト。 指定しない場合、デフォルトは |
defaultTldScan |
TLD をスキャンするときに、JAR をデフォルトでスキャンするかスキップするかを制御します。 |
ネストされたコンポーネント
Jar スキャンフィルタ要素内にコンポーネントをネストすることはできません。
特別な機能
Jar スキャンフィルタ要素に関連付けられた特別な機能はありません。