Sie können die pureQuery Runtime-Eigenschaft finalRepositoryProperties verwenden, um Laufzeiteigenschaften aus einem Dateisystem oder einem Repository in einer Datenbank abzurufen. Das Abrufen von Eigenschaften aus einem Dateisystem oder Repository wirkt sich auf die Ausführungspriorität aus.
Bevor pureQuery Runtime Eigenschaften aus der über die Eigenschaft finalRepositoryProperties angegebenen Position abruft und festlegt, werden die pureQuery-Clientoptimierung und vorhandene pureQuery Runtime-Eigenschaften auf die Standardwerte zurückgesetzt. Alle auf der Datenquellenebene festgelegten Eigenschaften werden nicht gespeichert.
In einer WebSphere-Umgebung legen Sie die pureQuery Runtime-Eigenschaften an anderen Positionen fest, um den Umfang der Eigenschaften zu steuern. Die Position beeinflusst auch die Ausführungspriorität, wenn eine Eigenschaft an mehreren Positionen festgelegt ist.
Wenn Sie mit der Datei pdq.properties globale Eigenschaften festlegen, ordnen Sie die Datei pdq.properties im Klassenpfad des JDBC-Providers mit den pureQuery-JAR-Dateien an. Die Eigenschaften, die im Klassenpfad des JDBC-Providers festgelegt sind, gelten für alle Anwendungen, die den Treiber verwenden. Geben Sie hier keine Eigenschaften an, die für eine bestimmte Anwendung oder Datenquelle gelten.
Die pureQuery Runtime-Eigenschaft traceFile kann nur in einer globalen Datei pdq.properties angegeben werden.
Wenn sich die Datei pdq.properties in dem Verzeichnis befindet, kann die Eigenschaftendatei sowohl von WebSphere Application Server als auch von pureQuery Runtime gefunden werden.
Geben Sie die angepasste JDBC-Treibereigenschaft pdqProperties für die WebSphere-Datenquelle an.
Benutzer können die pureQuery Runtime-Eigenschaften für jede Datenquelle festlegen. Die Datenquellenebene ist geeignet, wenn die Einstellung für jede einzelne Datenquelle unabhängig sein muss. Wenn die Anwendung z. B. mehrere eindeutige Datenquellen verwendet, erfasst jede Datenquelle das entsprechende SQL in ihrer eigenen pureQueryXML-Datei.
Wenn die Eigenschaften in der Datenquelle festgelegt sind, gelten sie für alle Anwendungen, die diese Datenquelle verwenden. Wenn Anwendungen eine Datenquelle gemeinsam nutzen, werden die erfassten SQL-Anweisungen daher in einer einheitlichen Datei für alle Anwendungen erfasst.
Bei jeder Änderung am Wert der Eigenschaft pdqProperties einer Datenquelle muss der Anwendungsserver erneut gestartet werden, damit er die neuen Werte verwenden kann.
Name-der-Datenquelle ist der Wert der angepassten Eigenschaft dataSourceName von WebSphere DB2 Universal JDBC Driver, die in der Datenquelle festgelegt ist.
Die Datei pdq.Name-der-Datenquelle.properties gibt die datenquellenspezifischen Eigenschaften für eine Anwendung an. Die in dieser Datei angegebenen Eigenschaften gelten nur für die von der Anwendung verwendete Datenquelle. Name-der-Datenquelle ist der Zeichenfolgewert der angepassten WebSphere-Eigenschaft dataSourceName für die Datenquelle. Diese angepasste Eigenschaft wird mit Schritten festgelegt, die den Schritten ähneln, die zum Festlegen der angepassten WebSphere-Eigenschaft pdqProperties verwendet werden.
Bei Anwendungen, die den Datenquellennamen Name-der-Datenquelle verwenden, haben die in pdq.Name-der-Datenquelle.properties angegebenen Eigenschaften Vorrang vor den durch pdq.appwide.properties angegebenen Eigenschaften.
Sie können eine JAR-Datei mit den pureQuery Runtime-Eigenschaftendateien erstellen und diese direkt in das Anwendungsinstallationsverzeichnis in einer WebSphere-Installation speichern. Dann aktualisieren Sie die Datei MANIFEST.MF aller Module, die die pureQuery Runtime-Eigenschaften nutzen.
Wenn eine Anwendung anwendungsspezifische Eigenschaftendateien wie pdq.appwide.properties oder pdq.Name-der-Datenquelle.properties verwendet und wenn die neuen Eigenschaften bei der Änderung von Eigenschaften wirksam werden sollen, müssen Sie den WebSphere-Verbindungspool bereinigen und die Anwendung erneut starten, anstatt den Anwendungsserver erneut zu starten, damit die neuen Eigenschaftswerte wirksam werden.
WAS-Ausgangsverzeichnis/profiles/AppSrv01/installedApps/version1/MyAppEAR.ear
WAS-Ausgangsverzeichnis/profiles/AppSrv01/installedApps/version1/MyAppEAR.ear/MyAppEAR.war/META-INF/MANIFEST.MF
Fügen Sie den folgenden Eintrag Class-Path für die Datei pdq_props.jar hinzu:
Class-Path: pdq_props.jar
Der Eintrag befindet sich in einer einzigen Zeile in der Datei MANIFEST.MF und zwischen der Eigenschaft und dem Dateinamen steht ein Leerzeichen.Sie erstellen eine JAR-Datei, die die beiden pureQuery Runtime-Dateien enthält, und speichern sie wie oben beschrieben im Anwendungsinstallationsverzeichnis.
WebSphere Application Server 8 unterstützt JNDI-Variablen. pureQuery Runtime ab Version 3.2 unterstützt JNDI-Variablen für eine anwendungsweite Laufzeiteigenschaftendatei, wenn Sie WebSphere Application Server Version 8 verwenden.
Die Implementierung von pdq.appwide.properties-Dateien wird hierdurch vereinfacht, weil eine einzelne generische Datei für alle Anwendungen implementiert werden kann, ohne dass in jede Datei anwendungsspezifische Werte eingebettet werden müssen.
Wenn Sie WebSphere Version 8 oder höher mit pureQuery Runtime Version 3.2 oder höher verwenden, können Sie die Variablen ${appName} und ${moduleName} in pureQuery Runtime-Eigenschaftswerten angeben. Diese Variablen werden in der pureQuery Runtime-Eigenschaftendatei unterstützt. Sie können beispielsweise die Variablen mit der Laufzeiteigenschaft pureQueryXml verwenden, um eine pureQueryXML-Datei anzugeben.
pdq.pureQueryXml=C:\\capturedFiles\\${appName}-${moduleName}.pdqxml
Sie geben ein Dateisystem oder ein Repository in einer Datenbank mit der pureQuery Runtime-Eigenschaft finalRepositoryProperties an. Die Eigenschaft kann auf der globalen Ebene, Datenquellenebene oder Anwendungsebene angegeben werden.
Der Wert für die Eigenschaft propertiesGroupId wird ignoriert, außer er wird für ein in einer Datenbank erstelltes Repository verwendet. Wenn ein Repository verwendet wird, können Sie den Wert der Eigenschaft propertiesGroupId in den umgeleiteten Eigenschaften nicht ändern.
Informationen zu den Eigenschaften finden Sie in runtimeGroupActivationCheckInterval (Eigenschaft) und propertiesRefreshInterval (Eigenschaft).
Die pureQuery Runtime-Eigenschaft repositoryRequired steuert das Verhalten von pureQuery Runtime, wenn ein Dateisystem oder Repository verwendet wird. Sie geben die Eigenschaft an einer WebSphere-Position an, um das pureQuery Runtime-Verhalten zu steuern. Der Wert der Eigenschaft repositoryRequired kann durch die Festlegung der Eigenschaft repositoryRequired als eine der abgerufenen Eigenschaften überschrieben werden.