Métodos de búsqueda JNDI directos e indirectos para los orígenes de datos

Puede utilizar un método directo o indirecto para el nombre JNDI (Java™ Naming and Directory Interface) (como, por ejemplo, jdbc/DataSource) para buscar un origen de datos.

Directo

Cuando utilice un nombre JNDI, el servidor de aplicaciones asignará valores predeterminados a los datos de referencia de recursos. Se anota un mensaje informativo, que se asemeja a lo siguiente, para documentar los valores predeterminados:
[10/5/07 11:40:38:468 CDT] 0000002e ConnectionFac W   J2CA0294W: Direct JNDI lookup of resource jdbc/myDatasource.
   Se utilizarán los valores predeterminados siguientes:

[Resource-ref CMConfigData key items]  	
res-auth:                 1 (APPLICATION) 	
res-isolation-level:      0 (TRANSACTION_NONE) 	
res-sharing-scope:        true (SHAREABLE) 	
loginConfigurationName:   null 	
loginConfigProperties:    null  

[Resource-ref non-key items]  	
isCMP1_x:                 false (not CMP1.x) 	
isJMS:                 false (not JMS) 
commitPriority            0 	
Java EE Name:                not set 	
Resource ref name:        not set 	
isCMP:                    false (not set)

El primero de estos atributos, res-auth, dicta cuál es el tipo de autenticación que se realiza. Este valor predeterminado indica que se utiliza el alias de autenticación gestionado por componente si no especifica una especificación de activación, o si no especifica el nombre de usuario y la contraseña en la llamada getConnection. Indica que no se utiliza el alias gestionado por contenedor.

El segundo de estos valores, res-isolation-level, indica que el nivel de aislamiento se establece en los valores "predeterminados". Para un enterprise bean, puede establecerlo en el propio bean de Enterprise JavaBeans (EJB). Para un servlet que obtenga una conexión, esto produce que el nivel de aislamiento sea Repeatable_Read. Este es un nivel de aislamiento bastante restrictivo. Puede conducir a un rendimiento inferior, ya que las solicitudes de aplicación bloquearán más filas que un nivel de aislamiento menos restrictivo.

Finalmente, res-sharing-scope se establece como Shareable, lo que quiere decir que se utiliza una conexión Shareable (compartible). Para algunas aplicaciones, una conexión Shareable es correcta. Par otras, especialmente los servlets que consiguen varias conexiones en un solo método service(), no lo es.

Para evitar las sorpresas que pueden acompañar a estos valores, debe cambiar la aplicación para que utilice un nombre JNDI indirecto en lugar del nombre JNDI directo y debe crear una referencia de recurso.

Indirecta

Para utilizar valores que sean diferentes de los valores predeterminados, utilice una herramienta de ensamblaje para definir la referencia de recurso. La referencia del recurso también se puede crear en los editores EJB Deployment Descriptor (ejb-jar.xml), Web Deployment Descriptor (web.xml) o Application Client Deployment Descriptor (application-client.xml) utilizando una herramienta de ensamblaje. Después de definir la referencia de recurso, puede realizar una búsqueda JNDI indirecta (utilizando el contexto java:comp/env). Entonces se utilizarán los valores correspondientes a las propiedades de referencia de recurso definidos en la referencia de recurso y el mensaje J2CA0122I dejará de aparecer. Consulte el tema sobre la creación de una referencia de recurso para obtener más información al respecto.


Icon that indicates the type of topic Concept topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cdat_directlookup
File name: cdat_directlookup.html