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 trebuie 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.

În scanerul de sursă este disponibilă o corecţie rapidă. Remedierea rapidă ia informațiile de la Resource elemente și creează o referință de resurse sau o referință de mediu de resurse, după cum este necesar și un nume JNDI corespunzător. Tomcat recomandă, dar nu necesită, că referința de resurse corespunzătoare pentru Resource element să fie definit în " WEB-INF/web.xml". Rapid fix caută lista de resource-ref și resource-env-ref elemente pentru a vedea dacă înregistrarea de potrivire a numelui există deja. Dacă nu există, este creată una. Dacă Resource element are un auth atribut, resource-ref este creat. Dacă Resource element nu are un auth atribut, resource-env-ref este creat. În ambele cazuri, name valoarea este, de asemenea, utilizat ca nume JNDI și este definit în legăturile.

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


Fixarea rapidă ar crea acest lucru corespunzător <resource-ref> element:
< span class="Code"> < resource-ref>
< span class= "indent2" > < /span> < description>
Exemplu Baza 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>Shareable</res-sharing-scope>
</resource-ref>

Implicit, resursele sunt partajabile în Tomcat. Dacă domeniul de aplicare nu este stabilit pe Resource element, acesta este setat la shareable atunci când o nouă referință de resurse este creat pentru fix rapid. 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 versiunea J2EE 1.4 sau una anterioară, corecţia rapidă 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: