En las aplicaciones de WebLogic y JBoss, el elemento <local-jndi-name> define el nombre JNDI del inicio local del bean en el árbol JNDI global. Se define en el archivo weblogic-ejb-jar.xml o jboss.xml.
WebSphere(R) no permite correlacionar inicios locales con nombres JNDI en el árbol JNDI global. En su lugar, se correlacionan en el árbol de JNDI del contenedor local. Por este motivo, los programadores deben acceder a enterprise beans local utilizando una referencia de JNDI en el espacio de nombres local; no el nombre JNDI en el espacio de nombres global.
Esta regla se activa cuando se encuentra un elemento <local-jndi-name> en el archivo weblogic-ejb-jar.xml o jboss.xml. Hay un arreglo rápido disponible en el explorador de orígenes. El arreglo rápido procesa los archivos Java, los descriptores de despliegue y los enlaces para que estas referencias puedan funcionar en WebSphere.
Se procesan todos los paquetes relacionados con la aplicación en la que se encuentra el elemento <local-jndi-name>. Si el proyecto de aplicación empresarial de la aplicación no se encuentra o no está asociado con el proyecto EJB encontrado, sólo se procesa el proyecto EJB. Es importante que los proyectos relacionados estén correctamente definidos.
Cuando ejecuta el arreglo rápido en el explorador de orígenes, éste explora todos los archivos Java de la aplicación donde se encuentra <local-jndi-name>. Realiza una exploración para encontrar búsquedas de contexto directas al nombre JNDI local y realiza una exploración para encontrar búsquedas de la referencia de EJB de dicho nombre.
Por ejemplo, si el nombre JNDI local es ejb/myBeanLocalHome, los ejemplos de código siguientes desencadenan actualizaciones del código, descriptores de despliegue y enlaces o ambos.|
ctx.lookup("ejb/myBeanLocalHome"); ctx.lookup("java:comp/ejb/myBeanLocalHome"); ctx.lookup(myBeanLocalHomeNameVariable); |
El código Java se cambia en el primer ejemplo por ctx.lookup("java:comp/ejb/myBeanLocalHome") para que se realice una búsqueda de referencia de EJB. Los otros dos ejemplos de Java permanecen inalterados. En los tres casos, el arreglo rápido actualiza los descriptores de despliegue y los enlaces para el proyecto.
Cuando se detecta una búsqueda al nombre JNDI local específico para un proyecto y cuando se utiliza una variable y la búsqueda no se puede determinar, el archivo web.xml o el archivo ejb-jar.xml se modifica para incluir un <ejb-local-ref> para el bean que ha definido el nombre JNDI local. En el caso de un proyecto EJB, se añade el elemento <ejb-local-ref> a cada bean definido en el archivo ejb-jar.xml. En el caso del archivo web.xml, se añade una referencia para el bean que ha definido el nombre JNDI local. Para ambos casos, se añade el nombre JNDI <ejb-local-ref> al archivo de enlaces correspondiente al proyecto.