Verzeichnispositionen und -eigenschaften

In Libertyverfügen viele Verzeichnisse über zugeordnete Eigenschaften. Mit diesen Eigenschaften können bei der Konfiguration des Servers Dateipositionen angegeben werden.

Open Liberty Die aktuelle Dokumentation zu Liberty -Verzeichnispositionen und -Eigenschaften finden Sie auf der WebsiteOpen Liberty.

Tabelle 1. Standardverzeichnisstruktur der Laufzeitumgebung. Spalte 1 enthält eine Datei- und Verzeichnisstruktur. Wenn einem Verzeichnis eine Eigenschaft zugeordnet ist, ist dies in Spalte 2 angegeben. Eine Beschreibung der einzelnen Dateien oder Verzeichnisse finden Sie in Spalte 3.
Verzeichnis oder Datei Eigenschaft Beschreibung
wlp/ wlp.install.dir Stammverzeichnis der Installation
+- bin/   Scripts zum Verwalten der Installation. Beispiel: server.
+- clients/   Liberty -Client und Thin-Clientbibliotheken. Beispiel: restConnector.jar.
   +- jython/   Jython-basierte Scripts
+- dev/   Stammverzeichnis für Entwicklerressourcen (APIs, SPIs, Spezifikationen und Tools)
   +- api/   Zur Kompilierzeit und Laufzeit standardmäßig verfügbare öffentliche APIs
     +- ibm/   In Liberty verfügbare APIs
        +- javadoc/   Java™ -Dokumentarchive
     +- spec/   Zur Kompilierzeit und Laufzeit standardmäßig verfügbare öffentliche Spezifikations-APIs
     +- third-party/   APIs anderer Anbieter, die zur Kompilierzeit standardmäßig verfügbar sind und zur Laufzeit mit dem Attribut apiTypeVisibility des Elements classloader für Anwendungen in der Konfiguration angegeben werden müssen
   +- spi/   Öffentliche SPIs, die standardmäßig für Kompilierzeit und Laufzeit verfügbar sind.
     +- ibm/   In Liberty verfügbare SPIs
        +- javadoc/   Java-Dokumentarchive für SPI
     +- spec/   Zur Kompilierzeit und Laufzeit standardmäßig verfügbare öffentliche Spezifikations-APIs
   +- tools/   Ant-Plug-in für Liberty

Die Datei wlp-anttasks.jar im Verzeichnis tools wurde entfernt aus Liberty in 19.0.0.3. Ein Open-Source-Ant-Plug-in mit weiteren Tasks für Liberty ist verfügbar. Das aktuellere Ant-Plug-in hat einen anderen antlib-Namespace xmlns:wlp="antlib:net.wasdev.wlp.ant. Weitere Informationen zum Open-Source-Ant-Plug-in für Libertyfinden Sie im GitHub -Repository.

+- etc/   Benutzerdefinierte Servervariablen für alle Server (optional)
   +- server.env   Standardumgebungsvariablen für Serverscripts (optional)
   +- client.env   Standardumgebungsvariablen für Clientscripts (optional)
   +- jvm.options   JVM-Standardoptionen (optional)
+- lafiles/   Dateien mit Lizenzinformationen
+- lib/   Laufzeitumgebung der Plattform
+- templates/   Schablonen und Beispiele für die Laufzeitanpassung
   +- server/   Serverschablone beim Erstellen eines Servers
   +- client/   Clientschablone beim Erstellen eines Clients
+- usr/ wlp.user.dir Benutzerverzeichnis
   +- extension/ usr.extension.dir Von Benutzern entwickelte Features
   +- shared/    
      +- apps/ shared.app.dir Gemeinsam genutzte Anwendungen
      +- config/ shared.config.dir Gemeinsam genutzte Konfigurationsdateien
      +- resources/ shared.resource.dir Gemeinsame Ressourcendefinitionen: Adapter, Datenquellen
      +- stackGroups/ shared.stackgroup.dir Gemeinsam genutzte Stackgruppen für die Fernimplementierung von Paketen und installierbaren Elementen
   +- servers/   Gemeinsam genutztes Serververzeichnis
      +- server_name server.config.dir Serverkonfigurationsverzeichnis Verwenden Sie ${server.config.dir}, um auf serverspezifische Konfiguration (Anwendungen) zu verweisen.
         +- bootstrap.properties   Server-Bootstrap-Eigenschaften (optional)
         +- jvm.options   JVM-Optionen des Servers, die die Werte in wlp/etc/jvm.options ersetzen (optional)
         +- server.env   Server-Script-Umgebungsvariablen, die mit wlp/etc/server.env zusammengeführt werden (optional)
         +- server.xml   Overlays für Serverkonfigurationen (erforderlich)
         +- apps/   Serverkonfiguration für Anwendungen
         +- dropins/   Standardanwendungsordner "dropins" des Servers (optional)
            +- application_name   Anwendungsordner oder -archiv (optional)
         +- configDropins/   Serverkonfigurationsordner "dropins" (optional)
            +- defaults   Standardserverkonfigurationsordner "dropins" (optional)
            +- overrides   Serverkonfiguration setzt Ordner "dropins" außer Kraft(optional)
      +- server_name server.output.dir Serverausgabeverzeichnis. Verwenden Sie ${server.output.dir}, um Artefakte zu beschreiben, die vom Server generiert werden (Protokolldateien und Arbeitsbereich).
         +- logs/   Serverprotokolldateien, einschließlich FFDC-Protokollen (Verzeichnis ist nach der ersten Ausführung des Servers vorhanden)
            +- console.log   Nachrichten zu Basisserverstatus und -operationen
            +- trace_timestamp.log   Mit Zeitmarken versehene Tracenachrichten mit dem in der aktuellen Tracekonfiguration festgelegten Detaillierungsgrad
            +- ffdc/   FFDC-Ausgabeverzeichnis (First Failure Data Capture)
               +- ffdc_timestamp/   FFDC-Ausgabe (First-Failure Data Capture), die gewöhnlich ausgewählte Hauptspeicherauszüge von Diagnosedaten enthält, die mit sich auf das Scheitern einer angeforderten Operation beziehen
         +- workarea/   Dateien, die vom Server während der Ausführung erstellt werden (Verzeichnis ist nach der ersten Serverausführung vorhanden).
   +- clients/   Gemeinsam benutztes Clientverzeichnis
      +- client_name   Clientkonfigurationsverzeichnis
         +- bootstrap.properties   Client-Bootstrap-Eigenschaften (optional)
         +- client.jvm.options   Client-JVM-Optionen, die die Werte in wlp/etc/client.jvm.options ersetzen (optional)
         +- client.xml   Clientkonfigurationsoverlays (erforderlich)
         +- apps/   Clientkonfiguration für Anwendungen
         +- logs/   Clientprotokolldateien, einschließlich FFDC-Protokollen (Verzeichnis ist nach der ersten Ausführung des Clients vorhanden)
            +- trace_timestamp.log   Mit Zeitmarken versehene Tracenachrichten mit dem in der aktuellen Tracekonfiguration festgelegten Detaillierungsgrad
            +- ffdc/   FFDC-Ausgabeverzeichnis (First Failure Data Capture)
               +- ffdc_timestamp/   FFDC-Ausgabe (First-Failure Data Capture), die gewöhnlich ausgewählte Hauptspeicherauszüge von Diagnosedaten enthält, die mit sich auf das Scheitern einer angeforderten Operation beziehen
         +- workarea/   Dateien, die vom Client während der Ausführung erstellt werden (Verzeichnis ist nach der ersten Clientausführung vorhanden).

Sie können die Eigenschaften verwenden, die jedem Verzeichnis zugeordnet sind, um bei der Konfiguration des Servers Dateipositionen anzugeben. Ein Beispiel finden Sie unter Anwendungen in Liberty implementieren.

Tipp: Um die Portierbarkeit der Konfiguration sicherzustellen, verwenden Sie die spezifischste Eigenschaft, die geeignet ist, und verlassen Sie sich nicht auf die Beziehung zwischen Ressourcen. In einigen Konfigurationen ist beispielsweise die Installationsposition ${wlp.install.dir} möglicherweise nicht das übergeordnete Element der angepassten Instanz ${wlp.user.dir}.

Zugriff auf die Positionseigenschaften über das Programm

Positionseigenschaften können mit "jndiEntry"-Konfigurationselementen in der Datei server.xml in den gewünschten JNDI-Namespace gebunden werden. Beispiel:

<jndiEntry jndiName="serverName" value="${wlp.server.name}"/>

Jeder Code, der im Server ausgeführt wird, z. B. Anwendungen, gemeinsam genutzte Bibliotheken oder Features, kann über eine JNDI-Suche auf solche Einträge zugreifen:

Object serverName = new InitialContext().lookup("serverName");

Weitere Informationen zur Verwendung von JNDI-Einträgen in der Konfiguration finden Sie unter JNDI-Bindung für Konstanten aus den Serverkonfigurationsdateien verwenden.

Der Feature-Code kann auch eine vom Kernel bereitgestellte SPI (Systemprogrammierschnittstelle) verwenden, um die Werte für diese Eigenschaften aufzulösen. Beispiel:

ServiceReference <WsLocationAdmin>locationAdminRef = bundleContext.getServiceReference(WsLocationAdmin.class);
WsLocationAdmin locationAdmin = bundleContext.getService(locationAdminRef);
String serverName = locationAdmin.resolveString("${wlp.server.name}");