Solaris 9 12/03 Versionshinweise

Betroffenes Dokument: Sun ONE Application Server 7 Developer's Guide


Hinweis –

Diese Dokumentation behandelt die Verwendung indizierter Bereitstellungsverzeichnisse.


Die Nummerierungsschema-Komponente des Verzeichnisnamens bereitgestellter Anwendungen ist nun als Indizierungsmechanismus implementiert. Dieser Mechanismus ermöglicht es Entwicklern, JAR- oder class-Dateien bereitgestellter Anwendungen zu bearbeiten. Er ist für die Windows-Plattform von Bedeutung, da Windows bei dem Versuch, eine bereits geladene Datei zu überschreiben, eine Freigabeverletzung meldet. Dies ist darauf zurückzuführen, dass Windows die geladene Datei mit einer Dateisperre belegt. Die Datei wird beim Sitzungsstart auf die Server-Instanz oder die IDE geladen. Beim Auftreten der Freigabeverletzung bestehen zwei Möglichkeiten:


Hinweis –

Auf der Solaris-Plattform ist eine erneute Bereitstellung nicht nötig, da dort keine Dateisperrungen stattfinden.


Wenn Sie eine bereitgestellte Anwendung unter Windows durch ein IDE-Setup, eine ANT-Dateikopie, durch Kompilierung oder andere Operationen ändern, müssen Sie auch eine weitere Änderung beachten. Als Umgehung des Problems mit der Dateisperre wird ein neues Verzeichnis mit einem erhöhten Zahlenindex erstellt. So wird beispielsweise auf der Solaris-Plattform die J2EE-Anwendung helloworld mit der folgenden Verzeichnisstruktur auf Sun ONE Application Server bereitgestellt:

appserv/domains/domain1/server1/applications/j2ee-apps/helloworld_1

Anschließend muss eine Änderung an einem Servlet vorgenommen werden, das Teil dieser bereitgestellten Anwendung ist (z. B. HelloServlet.java). Sun ONE Studio IDE wird gestartet, die Quelldatei für dieses Servlet wird geändert und mit dem oben genannten Verzeichnis als javac-Ziel kompiliert. Mit der kompilierten Quelldatei im richtigen Verzeichnis liegt der Anwendung eine Neuladedatei vor. Das reload-Flag in server.xml ist auf true gesetzt, und wenn die Server-Instanz läuft, werden die Änderungen wirksam, ohne dass die Anwendung neu assembliert und bereitgestellt werden muss.

Auf der Windows-Plattform kann die JAR- oder class-Datei aufgrund der Dateisperre nicht bearbeitet oder aktualisiert werden. Für Windows stehen Ihnen zur Lösung dieses Problems folglich zwei Möglichkeiten zur Verfügung:

Die zweite Methode ist die empfehlenswertere, da hierbei der Verzeichnisname der bereitgestellten Anwendung einen erhöhten Indexwert erhält. Nach einer weiteren Bereitstellung von helloworld sehen die Verzeichnisstrukturen etwa wie folgt aus:

appserv/domains/domain1/server1/applications/j2ee-apps/helloworld_1

appserv/domains/domain1/server1/applications/j2ee-apps/helloworld_2

Die zweite Bereitstellung von helloworld erfolgt unter helloworld_2.