Eigenschaften für dynamische SQL-Erweiterung für angepasste Finder

Verwenden Sie diese Seite, um die Eigenschafteneinstellungen für dynamische SQL-Erweiterung für angepasste Finder zu ändern.

Um sicherzustellen, dass die dynamischen SQL-Erweiterungen für die angepassten Finder, die in einer Home-Schnittstelle der EJB Version 1.1 definiert sind und einen Back-End-Datenspeicher verwenden, korrekt angewendet werden, werden die folgenden Eigenschaften für die JVM (Java Virtual Machine) und Beans (Module) zur Verfügung gestellt. Mit diesen Eigenschaften können Sie angeben, welche angepassten Finder erweitert werden sollen, sofern der Back-End-Datenspeicher die SQL-Klauseln unterstützt.

[iSeries] [AIX Solaris HP-UX Linux Windows] Für i5/OS und verteilte Plattenformen klicken Sie zum Anzeigen dieser Seite der Administrationskonsole auf Server > Servertypen > WebSphere-Anwendungsserver > Servername > Java- und Prozessverwaltung > Prozessdefinition > Java Virtual Machine > Angepasste Eigenschaften.

[z/OS] Für z/OS klicken Sie zum Anzeigen dieser Seite der Administrationskonsole auf Server > Servertypen > WebSphere-Anwendungsserver > Servername > Controller (zum Definieren der Eigenschaft im Controller) oder Servant (zum Definieren der Eigenschaft im Servant) > Java- und Prozessverwaltung > Prozessdefinition > Java Virtual Machine > Angepasste Eigenschaften .

Register 'Konfiguration'

com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent

Mit dieser Eigenschaft können Sie angeben, für welche Enterprise-Beans die dynamische SQL-Erweiterung für angepasste Finder zur Laufzeit aktiviert werden soll.

Diese Eigenschaft wird auf Serverebene wirksam. Alle in der Home-Schnittstelle der EJB Version 1.1 definierten angepassten Finder (Präfix find) mit dem Access Intent Update sind je nach angegebener Isolationsstufe Kandidaten für die dynamische SQL-Erweiterung. Wenn der Back-End-Speicher eine spezielle SQL-Semantik erfordert, wird diese angewendet. Die jeweilig verwendete SQL variiert mit der für die Beans in der Anwendung ausgewählten Isolationsstufe und dem verwendeten Back-End-Datenspeicher. Bei der Eigenschafteneinstellugn all wird die dynamische SQL-Erweiterung für alle angepassten Finder aktiviert, die in den im Container installierten Beans definiert sind. Bei der Eigenschafteneinstellung J2EENAME[:J2EENAME] (J2EENAME steht für den vollständig qualifizierten Paket- oder Bean-Namen) wird die die dynamische SQL-Erweiterung nur für die angepassten Finder aktiviert, die in den im Container definierten Beans definiert sind und den angegebenen Bean-Namen entsprechen.

Datentyp String
Einstellmöglichkeiten Gültige Werte sind all und J2EENAME[:J2EENAME]
Standardeinstellung Erweiterungsverhalten nicht aktiv
Anmerkung: Einige Ihrer Anwendungen verwenden möglicherweise angepasste Finder, die manuell codiert wurden und bereits SQL-Sperrklauseln oder die Schlüsselwörter ORDER BY und DISTINCT in der Operation SELECT enthalten. Wenn die Laufzeitumgebung in solchen Fällen eine dynamische SQL-Erweiterung versucht, ist es möglich, dass ungültige SQL-Anweisungen in den zugrundeliegenden Back-End-Datenspeicher eingefügt werden. Falls eine Anwendung solche angepassten Finder enthält, müssen Sie bei der Angabe des Wertes für die JVM-Eigenschaft com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent sehr sorgfältig vorgehen. Der Wert all bewirkt, dass für jede angepasste Finder-Methode, die mit dem Access Intent Update definiert ist, in allen im Anwendungsserver installierten Beans eine dynamische SQL-Erweiterung durchgeführt wird, woraufhin ungültige SQL-Anweisungen für diese angepassten Finder eingefügt werden.

Um dies zu verhindern, setzen Sie die serverweite Einstellung nicht auf all. Verwenden Sie stattdessen die Eigenschaft der Methodenebene, com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent.methodLevel, um für jede Bean nur die angepassten Finder-Methoden anzugeben, für die zur Laufzeit eine dynamische SQL-Erweiterung durchgeführt werden soll.

com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent.methodLevel

Mit dieser Eigenschaft wird angegeben, dass eine dynamische SQL-Erweiterung für eine bestimmte Bean auf Methodenebene durchgeführt werden soll.

Ist für eine Bean diese Eigenschaft definiert und werden mit der Eigenschaft eine oder mehrere angepasste Finder-Methoden angegeben, wird für jeden angepassten Finder (Präfix find), der in der Home-Schnittstelle definiert ist und einen entsprechenden Methodennamen und eine Parametersignatur besitzt, zur Laufzeit die SQL-Sperrsemantik angewendet. Die gilt jedoch nur, wenn die angepasste Finder-Methode den Access Intent Update hat und der Back-End-Datenspeicher die SQL-Klauseln unterstützt. Die jeweilig verwendete SQL variiert mit der für die Anwendung ausgewählten Isolationsstufe und dem verwendeten Back-End-Datenspeicher.

Datentyp String
Einstellmöglichkeiten Gültige Werte sind Zeichenfolgen des folgenden Formats: method1(parm1,parm2,..parmn):method2(parm1,parm2,..parmn):methodn(...)
com.ibm.websphere.persistence.bean.managed.custom.finder.access.intent [z/OS]

Mit dieser Eigenschaft können Benutzer von WebSphere Application Server for z/OS Version 4.x angeben, dass die Funktionalität für SQL-Erweiterung nicht auf Anwendungen angewendet werden soll, die in WebSphere Application Server for z/OS installiert sind.

Standardmäßig führt WebSphere Application Server for z/OS Version 4.x dynamische SQL-Erweiterungen durch. z/OS-Benutzer, die sich gegen die dynamische SQL-Erweiterung für angepasste Finder in Version 4.x entscheiden, können dieses Attribut auf Bean- und Serverebene definieren.

Auf Bean-Ebene inaktiviert ein Name/Wert-Paar, das sich aus dem Attributnamen und dem Wert true zusammensetzt, die SQL-Erweiterung für alle angepassten Finder, die in der Home-Schnittstelle der angegebenen Bean definiert sind.

Auf Serverebene inaktiviert ein Eintrag in der Servereigenschaftendatei von WebSphere Application Server for z/OS mit dem Wert true die SQL-Erweiterung für alle Beans, die im angegebenen Server installiert sind.

Das Attribut für die Erweiterung angepasster Finder wird von der Laufzeitumgebung in Version 5.x auf Bean-Ebene weiterhin unterstützt. Die Verwendung des Attributs auf Serverebene ist in Version 5.x veraltet, weil in Version 5.x standardmäßig keine dynamische SQL-Erweiterung angepasster Finder vorgenommen wird.

Anmerkung: Wenn sich Ihre Installation von WebSphere Application Server for z/OS auf die automatische dynamische Erweiterung aller angepassten Finder in allen installierten Anwendungen stützt, müssen Sie com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent auf all setzen. Wenn eine Anwendung eine Bean enthält, für die com.ibm.websphere.persistence.bean.managed.custom.finder.access.intent in den env-var-Einstellungen definiert ist, wird diese Eigenschaft, wie oben beschrieben, weiterhin verwendet, sofern die Features für dynamische SQL-Erweiterung der Version 5.x aktiviert sind.
Datentyp String
Einstellmöglichkeiten Die gültigen Werte sind true und false.

Hinweise zur Vorrangstellung:

  • Das Attribut com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent.methodLevel überschreibt jede Einstellung dieses Attributs auf Server- oder Bean-Ebene.
  • Jede mit einem J2EE-Namen im Attribut com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent angegebene Bean bewirkt, dass die dynamische Erweiterung für angepasste Finder durchgeführt wird, die für diese Bean definiert sind. Dies gilt auch, wenn das Standardverhalten für den betreffenden Server aktiviert ist.
  • Das Attribut com.ibm.websphere.persistence.bean.managed.custom.finder.access.intent inaktiviert die Verwendung dieses Feature durch eine bestimmte Bean, wenn die Einstellung auf Server- oder Bean-Ebene definiert ist und keine Einstellungen auf Methodenebene angegeben sind.



Mit (online) gekennzeichnete Links setzen einen Internet-Zugang voraus.

Zugehörige Tasks
[AIX Solaris HP-UX Linux Windows] [iSeries]


Dateiname: udat_sqllock.html