Utiliser des descripteurs de déploiement Java EE et des liaisons WebSphere pour définir les références de lien vers des ressources

Cette règle marque les éléments Context <ResourceLink> trouvés dans le fichier META-INF/context.xml et qu'il peut être nécessaire de migrer.

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

Etant donné que l'outil de migration n'a pas forcément accès au répertoire de configuration Tomcat, l'outil de migration ne migre que le fichier META-INF/context.xml. Vous pouvez copier les informations ResourceLink définies à d'autres emplacements dans le fichier META-INF/context.xml en vue de leur traitement.

Un correctif rapide est disponible dans le scanner de source. Le correctif rapide se sert des informations provenant des éléments ResourceLink pour créer une référence de ressource et un nom JNDI correspondant comme suit :

Notez que les autres attributs ResourceLink (fabrique, nom d'utilisateur et mot de passe) ne sont pas migrés automatiquement. Si votre application utilise ces attributs dans un élément ResourceLink, vous devez créer une ressource unique dans la configuration du serveur, attribuer un nom JNDI unique à la ressource et mettre à jour le fichier de liaison IBM avec le nouveau nom JNDI.

Si le projet Web est un projet Java EE 5 ou de version ultérieure et que le fichier WEB-INF/web.xml n'existe pas, le fichier WEB-INF/web.xml est créé et les nouveaux éléments de référence de lien vers des ressources sont ajoutés. Si le projet Web est un projet J2EE 1.4 ou de version antérieure, le correctif rapide signale une erreur.

Par exemple, si le fichier META-INF/Context.xml contient l'élément ResourceLink suivant :

<ResourceLink global="jdbc/SampleWebGlobal" name="jdbc/SampleWeb" type="javax.sql.DataSource"/>

le correctif rapide met à jour ou crée un élément resource-ref dans le fichier web.xml, comme suit :

<resource-ref id="ResourceRef_1313785392722">
<res-ref-name>jdbc/SampleWeb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>

Le nom JNDI est ajouté au fichier de liaison IBM. Il référence la référence existante définie dans web.xml. Si le fichier de liaison n'existe pas, il est créé.

Vous devez aussi configurer la ressource dans la configuration de WebSphere Application Server.

Pour plus d'informations sur la définition de ressources de contexte dans Tomcat, voir :