Utiliser des descripteurs de déploiement Java EE pour définir les paramètres de contexte

Cette règle marque les éléments Context <Parameter> trouvés dans le fichier META-INF/context.xml.

Apache Tomcat permet la définition des éléments Context <Parameter> aux emplacements suivants :

L'outil de migration ne migre les éléments de paramètre que vers le fichier META-INF/context.xml. Vous pouvez copier les informations de paramètre définies à d'autres emplacements dans le fichier META-INF/context.xml en vue de leur traitement.

Si un fichier WEB-INF/web.xml existe dans le projet Web :

Les éléments Context <Parameter> sont marqués si l'une des conditions suivantes est remplie :

Un correctif rapide pour cette règle est disponible dans le scanner de source. Le correctif rapide ajoute au fichier web.xml un nouvel élément <context-param> qui représente l'élément Context <Parameter>, s'il n'existe pas déjà dans le fichier web.xml. Si l'entrée existe, elle est mise à jour.

Si le fichier WEB-INF/web.xml n'existe pas :

Tous les éléments Context <Parameter> sont marqués.

Le correctif rapide crée un fichier WEB-INF/web.xml qui inclut les éléments <context-param> appropriés si la version du projet Web est Java EE 5 ou une version ultérieure. Il signale une erreur si la version du projet Web est J2EE 1.4 ou une version ultérieure.

Par exemple, prenez un fichier META-INF/context.xml dont le contenu est le suivant :

<Parameter
description="Déclenchement car il n'existe pas"
name="nouvelleEntrée"
override="false"
value="abc123"/>
<Parameter
description="Déclenchement car la valeur est différente"
name="paramètre_1"
override="false"
value="nouvelle valeur"/>
<Parameter
description="Pas de déclenchement car le remplacement a pour valeur true"
name="paramètre_2"
override="true"
value="123"/>

et le fichier web.xml suivant dans l'application :

<context-param>
<description>Déclenchement car la valeur est différente</description>
<param-name>paramètre_1</param-name>
<param-value>ancienneValeur</param-value>
</context-param>

<context-param>
<description>Pas de déclenchement car le remplacement a pour valeur true</description>
<param-name>paramètre_2</param-name>
<param-value>123456789</param-value>
</context-param>

Une fois le correctif appliqué, le fichier web.xml est mis à jour et son contenu est le suivant :

<context-param>
<description>Déclenchement car il n'existe pas</description>
<param-name>nouvelleEntrée</param-name>
<param-value>abc123</param-value>
</context-param>

<context-param>
<description>Déclenchement car la valeur est différente</description>
<param-name>paramètre_1</param-name>
<param-value>nouvelle valeur</param-value>
</context-param>

<context-param>
<description>Pas de déclenchement car le remplacement a pour valeur true</description>
<param-name>paramètre_2</param-name>
<param-value>123456789</param-value>
</context-param>

Pour plus d'informations sur le paramètre de contexte dans Tomcat, voir :