Utilizaţi descriptori de implementare Java EE şi legări WebSphere pentru a defini referinţe de resurse

Această regulă semnalează Context <Resource> elemente găsite în fișierul META-INF/context.xml care ar putea avea nevoie de migrație.

Apache Tomcat permite Context <Resource> elemente care urmează să fie definite în aceste locații:

De vreme ce este posibil ca unealta de migrare să nu aibă acces la directorul de configurare Tomcat, aceasta migrează numai fişierul META-INF/context.xml. Informaţiile de resurse definite în alte locaţii pot fi copiate în fişierul META-INF/context.xml pentru a fi procesate.

O soluție automată va prelua informațiile de la Resource și creează o referință de resursă sau o referință de mediu de resurse, după cum este necesar, și un nume JNDI corespunzător. Tomcat recomandă, dar nu impune, ca referința corespunzătoare a resursei de referință pentru Resource să fie definit în WEB-INF/web.xml. Soluția automată va căuta în lista de resource-ref și resource-env-ref elemente pentru a vedea dacă intrarea care corespunde numelui există deja. Dacă nu există, este creată una. Dacă Resource are un element auth atribut, un resource-ref este creat. Dacă Resource nu are un element auth atribut, un resource-env-ref este creat. În ambele cazuri, name valoarea este utilizată și ca nume JNDI și este definită în bindings.

De exemplu, având în vedere următoarele Resource element din META-INF/context.xml fișier:
<Resursă name="jdbc/exampleDB"
auth="Container"
type="javax.sql.DataSource"
description="Exemplu de bază de date"/>


Corecția automată va crea acest lucru corespunzător <resource-ref> element:
<resurse-ref>
<description>
Exemplu de bază de date</description>
<res-ref-name>jdbc/exampleDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Partajabil</res-sharing-scope>
</resource-ref>

Implicit, resursele sunt partajabile în Tomcat. Dacă domeniul de aplicare nu este setat pe Resource element, este setat la partajabil atunci când este creată o nouă referință de resursă pentru remedierea automată. Dacă există deja o potrivire de referinţă de resursă în WEB-INF/web.xml, nu sunt făcute modificări.

Dacă proiectul web este Java EE 5 sau o versiune ulterioară şi WEB-INF/web.xml nu există, este creat WEB-INF/web.xml şi sunt adăugate noile elemente de referinţe resurse. Dacă proiectul web este la J2EE 1.4 sau mai jos, soluția automată va raporta o eroare.

De asemenea, va trebui să configuraţi resursa în configuraţia WebSphere.

Pentru informaţii suplimentare privind definiţia resurselor de context în Tomcat, vedeţi: