Java-EE-Implementierungsdeskriptoren und WebSphere-Bindungen für die Definition von Ressourcenlinkreferenzen verwenden

Diese Regel markiert Elemente "Context <ResourceLink>" in der Datei META-INF/context.xml, die unter Umständen migriert werden müssen.

Apache Tomcat lässt die Definition von Elementen "Context <ResourceLink>" an den folgenden Positionen zu:

Da das Migrationstool möglicherweise keinen Zugriff auf das Tomcat-Konfigurationsverzeichnis hat, migriert das Migrationstool nur die Datei META-INF/context.xml. An den anderen Positionen definierte ResourceLink-Informationen können zur Verarbeitung in die Datei META-INF/context.xml kopiert werden.

Es ist eine Schnellkorrektur im Quellenscanner verfügbar. Die Schnellkorrektur verwendet die Informationen aus den Elementen ResourceLink und erstellt wie folgt eine Ressourcenreferenz und einen entsprechenden JNDI-Namen:

Beachten Sie, dass die anderen ResourceLink-Attribute (factory, username und password) nicht automatisch migriert werden. Wenn Ihre Anwendung diese Attribute in einem Element ResourceLink verwendet, müssen Sie eine eindeutige Ressource in der Serverkonfiguration erstellen, die Ressource mit einem eindeutigen JNDI-Namen angeben und die IBM Bindungsdatei mit dem neuen JNDI-Namen aktualisieren.

Wenn das Webprojekt ein Projekt der Version Java EE 5 oder höher und die Datei WEB-INF/web.xml nicht vorhanden ist, wird die Datei WEB-INF/web.xml erstellt, und die neuen Ressourcenlinkreferenzelemente werden hinzugefügt. Wenn das Webprojekt ein Projekt der Version J2EE 1.4 oder niedriger ist, meldet die Schnellkorrektur einen Fehler.

Angenommen, eine Datei META-INF/Context.xml enthält das folgende Element ResourceLink:

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

Die Schnellkorrektur aktualisiert oder erstellt ein neues Element resource-ref in der Datei web.xml, das dem folgenden Beispiel gleicht:

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

Der JNDI-Name wird der IBM Bindungsdatei hinzugefügt. Er verweist auf die vorhandene Referenz, die in der Datei web.xml definiert ist. Falls die Bindungsdatei noch nicht vorhanden ist, wird sie erstellt.

Außerdem müssen Sie die Ressource in der Konfiguration von WebSphere Application Server konfigurieren.

Weitere Informationen zur Kontextressourcendefinition in Tomcat finden Sie im folgenden Dokument: