Propiedades de mejora dinámica de SQL para métodos finder personalizados

Utilice esta página para modificar los valores de las propiedades de mejora dinámica de SQL para métodos finder personalizados.

Para garantizar que se efectúe correctamente una mejora dinámica del lenguaje de consulta estructurado (SQL) para los métodos finder personalizados definidos en una interfaz de factoría de EJB 1.1 mediante un almacén de datos de programa de fondo que requiera las cláusulas especiales de bloqueo de SQL, se facilitan las siguientes propiedades de bean (módulo) y JVM (Java Virtual Machine). Estas propiedades le permiten indicar qué métodos finder personalizados desea mejorar, siempre y cuando el almacén de datos de programa de fondo dé soporte a las cláusulas SQL.

[iSeries] [AIX Solaris HP-UX Linux Windows] En i5/OS y plataformas distribuidas, para ver esta página de la consola administrativa, pulse Servidores > Tipos de servidor > WebSphere Application Servers > nombre_servidor > Java y gestión de procesos > Definición de proceso > Máquina virtual Java > Propiedades personalizadas.

[z/OS] En z/OS, para ver esta página de la consola administrativa, pulse Servidores > Tipos de servidor > WebSphere Application Servers > nombre_servidor > Control (para definir la propiedad en el control) o Sirviente (para definir la propiedad en el sirviente) > Java y gestión de procesos > Definición de proceso > Máquina virtual Java > Propiedades personalizadas.

Pestaña Configuración

com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent

Se utiliza para indicar para qué enterprise beans debe habilitarse la mejora dinámica de SQL para métodos finder personalizados durante el tiempo de ejecución.

Esta propiedad entra en vigor en el nivel de servidor. Cualquier método finder personalizado definido en la interfaz de factoría de EJB 1.1 (con el prefijo find) que tenga Update como intento de acceso es un candidato para la mejora dinámica de SQL para métodos finder personalizados según el nivel de aislamiento especificado. Si al almacenar de datos de programa de fondo necesita una semántica SQL especial, ésta se aplica. El lenguaje SQL utilizado varía según el nivel de aislamiento que seleccione para los beans de la aplicación, y según la base de datos de programa de fondo que se utilice. Si se establece en all, la mejora dinámica de SQL para métodos finder personalizados se habilita para todos los métodos finder personalizados definidos en cualquier bean que esté instalado en el contenedor. Si se estable en J2EENAME[:J2EENAME], donde J2EENAME es un nombre de bean o paquete plenamente cualificado, se habilita la mejora dinámica de SQL para métodos finder personalizados únicamente para aquellos definidos en los beans que se instalan en el contenedor y que se representan mediante los nombres de bean especificados.

Tipo de datos String
Rango Los valores válidos son all o J2EENAME[:J2EENAME]
Valor predeterminado El comportamiento de mejora no está activado
Nota: Algunas aplicaciones podrían utilizar métodos personalizados que hayan sido codificados manualmente y contengan cláusulas de bloqueo de SQL o palabras claves ORDER BY y DISTINCT en la operación SELECT. En estas instancias, si durante el tiempo de ejecución se intenta la mejora dinámica de SQL, existe la posibilidad de que se introduzcan sentencias de SQL creadas incorrectamente en el almacén de datos de programa de fondo. Si una aplicación contiene estos métodos finder personalizados, debe tener cuidado al especificar el valor para la propiedad com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent de JVM. Un valor de all hace que se produzca una mejora dinámica de SQL para métodos finder personalizados para todos aquellos métodos finder personalizados definidos con un intento de acceso de Update en todos los beans instalados en el servidor de aplicaciones, dando lugar a lenguaje SQL creado incorrectamente para dicho conjunto de métodos personalizados.

Para evitar que esto ocurra, no establezca el valor para todo el servidor en all. En su lugar, utilice la propiedad de nivel de método de bean com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent.methodLevel para indicar en base a cada bean sólo aquellos métodos finder personalizados en los que deberían ejecutarse una mejora dinámica de SQL para métodos finder personalizados durante el tiempo de ejecución.

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

Se utiliza para indicar que se habilite la mejora dinámica de SQL para métodos finder personalizados en el nivel de método de un determinado bean.

Al definir un bean con esta propiedad establecida en un lista de uno o más métodos finder personalizados, se aplica la semántica de bloqueo de SQL durante el tiempo de ejecución a cualquier método finder (con el prefijo llamado find) definido en la interfaz de factoría que coincida con un nombre de método y una signatura de parámetro de firma. Esto ocurre sólo si el método finder personalizado tiene un intento de acceso de Update especificado y el almacén de datos de programa de fondo da soporte a las cláusulas de SQL. El lenguaje SQL utilizado varía según el nivel de aislamiento seleccionado para la aplicación, además de por el almacén de datos de programa de fondo que se utilice.

Tipo de datos String
Rango El valor válido es una serie del siguiente aspecto: method1(parm1,parm2,..parmn):method2(parm1,parm2,..parmn):methodn(...)
com.ibm.websphere.persistence.bean.managed.custom.finder.access.intent [z/OS]

Los usuarios de WebSphere Application Server para z/OS Versión 4.x la utilizan para indicar que las posibilidades de mejora de SQL no se deben aplicar a las aplicaciones instaladas en WebSphere Application Server para z/OS.

El comportamiento por omisión de WebSphere Application Server para z/OS Versión 4.x es realizar las mejoras dinámicas de SQL. Para aquellos usuarios de z/OS que opten por participar en una mejora dinámica de SQL de los métodos finder personalizados en la versión 4.x del producto, este atributo se utiliza para realizar esta indicación tanto a nivel de bean como de servidor.

A nivel de bean, un par de nombre y valor que consista de este nombre de atributo y un valor de true inhabilita la mejora de SQL de cualquier método finder personalizado en la interfaz de factoría de dicho bean.

A nivel de servidor, una entrada en el archivo de propiedades de servidor de WebSphere Application Server para z/OS con un valor de true inhabilita la mejora de SQL de todos los beans instalados en el servidor proporcionado.

Durante el tiempo de ejecución, se continúa dando soporte a este atributo de mejora de métodos finder personalizados a nivel de bean en la versión 5.x del producto. Está en desuso su utilización como indicador de todo el servidor debido a que el comportamiento por omisión de la versión 5.x es no mejorar dinámicamente el SQL de métodos finder personalizados.

Nota: Si la instalación de WebSphere Application Server para z/OS se basa en la mejora dinámica automática de todos los buscadores personalizados en todas las aplicaciones instaladas, debe establecer el indicador com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent en all. Si una aplicación contiene un bean que tenga el indicador com.ibm.websphere.persistence.bean.managed.custom.finder.access.intent establecido en los valores env-var, se continúa utilizando dicho indicador, siempre y cuando las características de mejora dinámica de SQL de la versión 5.x del producto estén habilitadas como se describe anteriormente.
Tipo de datos String
Rango Los valores válidos son true y false

Algunas notas sobre la prioridad:

  • El atributo com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent.methodLevel sobrescribe cualquier valor de atributo de todos el servidor o a nivel de bean.
  • Cualquier bean enumerado mediante un nombre J2EE en el indicador com.ibm.websphere.ejbcontainer.customfinder.honorAccessIntent hace que se realice la mejora dinámica para los métodos finder personalizados para dicho bean, incluso si el comportamiento por omisión es en efecto para el servidor en cuestión.
  • El atributo com.ibm.websphere.persistence.bean.managed.custom.finder.access.intent inhabilita la utilización de esta característica de un determinado bean, si el valor para todo el servidor o valor del bean está habilitado y no se ha especificado ningún valor de nivel de método.



Los enlaces marcados (en línea) requieren acceso a Internet.

Tareas relacionadas
[AIX Solaris HP-UX Linux Windows] [iSeries]


Nombre de fichero: udat_sqllock.html