Această regulă semnalează
Context <Environment>
elemente găsite în fișierul META-INF/context.xml care trebuie să fie transformate în
<env-entry>
elemente în
WEB-INF/web.xml .
Apache Tomcat permite
Context <Environment>
elemente care trebuie definite în aceste locații:
- Fişierul META-INF/context.xml
- Fişierul de configuraţie XML al aplicaţiei din directorul Tomcat conf
- The
<Host>
element în conf/server.xml
Deoarece instrumentul de migrare ar putea să nu aibă acces la directorul de configurare Tomcat, acesta marchează doar
Context <Environment>
în META-INF/context.xml fișier.
Context <Environment>
informațiile definite în celelalte locații pot fi copiate în META-INF/context.xml pentru a pentru ca acesta să fie prelucrat de instrument.
Dacă există un fişier WEB-INF/web.xml în proiectul web:
Context <Environment>
vor fi marcate în oricare dintre următoarele condiții:
- Intrarea nu are o intrare care să se potrivească în fişierul web.xml.
- Intrarea are un alt tip decât intrarea care se potriveşte în fişierul web.xml.
- Intrarea are o valoare diferită decât cea care se potriveşte în fişierul web.xml şi steguleţul de înlocuire setat la false.
Adăugați un nou
<env-entry>
în fișierul web.xml fișier care reprezintă
Context <Environment>
dacă acesta nu există deja în elementul web.xml fișier.
Dacă intrarea există, aceasta va fi actualizată.
Dacă nu există fişierul WEB-INF/web.xml:
Toate
Context <Environment>
elementele vor fi marcate.
Creați un WEB-INF/web.xml fișier care include
<env-entry>
elemente dacă proiectul web este la Java EE 5 sau mai mare. Soluția automată va raporta o eroare dacă proiectul web se află la J2EE 1.4 sau mai jos.
De exemplu, luaţi în considerare un fişier
META-INF/context.xml
cu următorul conţinut:
<Environment
description="Trigger because it does not exist"
name="newEntry"
override="false"
type=" java.lang.String " value=" abc123 "/>
<Environment
description="Trigger because of different value"
name="contextEnvString_1"
override="false"
type="java.lang.String"
value="valoare nouă"/>
<Environment
description="Trigger because of different type"
name="contextEnvString_2"
override="false"
type="java.lang.Integer"
value="123"/>
<Environment
description="will not Trigger because of override set to true."
name="contextEnvString_3"
override="true"
type="java.lang.Integer"
value="123"/>
cu următorul fişier web.xml în aplicaţie:
<env-entry>
<description>Declanșare din cauza unei valori diferite</description>
<env-entry-name>contextEnvString_1</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>oldValue</env-entry-value>
</env-entry>
<env-entry>
<description>Declanșare din cauza tipului diferit</description>
<env-entry-name>contextEnvString_2</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>123</env-entry-value>
</env-entry>
<env-entry>
<description>nu se va declanșa din cauza suprascrierii setate la true.</description>
<env-entry-name>contextEnvString_3</env-entry-name>
<env-entry-type>java.lang.Integer</env-entry-type>
<env-entry-value>123456789</env-entry-value>
</env-entry>
După aplicarea remedierii automate, fișierul web.xml va fi actualizată pentru a conține:
<env-entry>
<description>Declanșare din cauza unei valori diferite</description>
<env-entry-name>contextEnvString_1</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>valoare nouă</env-entry-value>
</env-entry>
<env-entry>
<description>Declanșare din cauza tipului diferit</description>
<env-entry-name>contextEnvString_2</env-entry-name>
<env-entry-type>java.lang.Integer</env-entry-type>
<env-entry-value>123</env-entry-value>
</env-entry>
<env-entry>
<description>nu se va declanșa din cauza suprascrierii setate la true.</description>
<env-entry-name>contextEnvString_3</env-entry-name>
<env-entry-type>java.lang.Integer</env-entry-type>
<env-entry-value>123456789</env-entry-value>
</env-entry>
<env-entry>
<description>Declanșare deoarece nu există</description>
<env-entry-name>newEntry</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>abc123</env-entry-value>
</env-entry>