この規則により、META-INF/context.xml ファイル内で見つかり、マイグレーションの必要がある可能性のある Context <Resource> エレメントにフラグを立てます。
Apache Tomcat では、Context <Resource> エレメントを以下の場所で定義できます。
マイグレーション・ツールは、Tomcat 構成ディレクトリーにアクセスできない場合もあるため、マイグレーション・ツールがマイグレーションするのは META-INF/context.xml ファイルのみです。 その他の場所で定義されたリソース情報は、処理できるように META-INF/context.xml ファイルにコピーできます。
ソース・スキャナーでクイック・フィックスが使用可能です。クイック・フィックスは、Resource エレメントから情報を取り出し、必要に応じてリソース参照またはリソース環境参照を作成し、対応する JNDI 名を作成します。 Tomcat では、Resource エレメントの対応するリソース参照を WEB-INF/web.xml で定義するように推奨していますが、これは必須ではありません。 クイック・フィックスは、resource-ref エレメントおよび resource-env-ref エレメントのリストを検索し、一致する名前のエントリーが既に存在しているかどうかを確認します。 存在しなければ、作成されます。Resource エレメントに auth 属性がある場合、resource-ref が作成されます。 Resource エレメントに auth 属性がない場合、resource-env-ref が作成されます。また両方の場合とも、name 値が JNDI 名として使用され、バインディング内に定義されます。
例えば、META-INF/context.xml ファイルに以下のような Resource エレメントがあります。|
<Resource name="jdbc/exampleDB" auth="Container" type="javax.sql.DataSource" description="Example Database"/> |
|
<resource-ref> <description> Example Database</description> <res-ref-name>jdbc/exampleDB</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> <res-sharing-scope>Shareable</res-sharing-scope> </resource-ref> |
デフォルトでは、リソースは Tomcat で共有可能です。Resource エレメントに有効範囲が設定されていない場合、クイック・フィックス用に新規リソース参照が作成されると、共有可能に設定されます。WEB-INF/web.xml に一致するリソース参照が既に存在している場合、変更は行われません。
Web プロジェクトが Java EE 5 以降で、WEB-INF/web.xml が存在しない場合、WEB-INF/web.xml が作成され、新規リソース参照エレメントが追加されます。 Web プロジェクトが J2EE 1.4 以下である場合、クイック・フィックスはエラーを報告します。
WebSphere 構成にリソースを構成する必要もあります。
Tomcat でのコンテキスト・リソース定義について詳しくは、以下を参照してください。