W aplikacjach WebLogic i JBoss element <local-jndi-name> definiuje nazwę JNDI lokalnego katalogu głównego komponentu bean w globalnym drzewie JNDI. Jest on zdefiniowany w pliku weblogic-ejb-jar.xml lub jboss.xml.
Produkt WebSphere(R) nie zezwala na odwzorowywanie lokalnych katalogów głównych na nazwy JNDI w globalnym drzewie JNDI. Zamiast tego są one odwzorowywane na drzewo JNDI lokalnego kontenera. Z tego powodu programiści muszą uzyskiwać dostęp do lokalnych komponentów EJB przy użyciu odwołania JNDI w lokalnej przestrzeni nazw, a nie nazwy JNDI w globalnej przestrzeni nazw.
Ta reguła jest uruchamiana, gdy element <local-jndi-name> zostanie znaleziony w pliku weblogic-ejb-jar.xml lub w jboss.xml. Zautomatyzowana poprawka przetworzy pliki Java, deskryptory wdrożenia i powiązania, aby włączyć te odniesienia do pracy na WebSphere.
Przetwarzane są wszystkie pakiety powiązane z aplikacją, w której znajduje się element <local-jndi-name>. Jeśli projekt EAR aplikacji nie zostanie znaleziony lub nie jest powiązany ze znalezionym projektem EJB, przetwarzany jest tylko projekt EJB. Ważną kwestią jest poprawne zdefiniowanie projektów pokrewnych.
Gdy automatyczna poprawka jest dostępna i została zastosowana, przeskanuje ona wszystkie pliki Java w aplikacji, w której znaleziono <local-jndi-name>. Poszukuje bezpośrednich wyszukiwań kontekstu lokalnej nazwy JNDI oraz wyszukiwań odwołania komponentu EJB do tej nazwy.
Na przykład, jeśli lokalna nazwa JNDI to ejb/myBeanLocalHome , poniższe przykłady kodu wyzwalają aktualizacje kodu, deskryptorów wdrażania i powiązań lub obu tych elementów.W pierwszym przykładzie kod Java został zmieniony na ctx.lookup("java:comp/ejb/myBeanLocalHome") aby wykonywane jest wyszukiwanie referencyjne EJB. Pozostałe dwa przykłady kodu Java pozostają niezmienione. We wszystkich trzech przypadkach automatyczna poprawka zaktualizuje deskryptory wdrożenia i powiązania dla projektu.
Po wykryciu w projekcie wyszukiwania konkretnej lokalnej nazwy JNDI, gdy używana jest zmienna i nie można określić wyszukiwania, plik web.xml lub ejb-jar.xml zostanie zmodyfikowany w taki sposób, aby zawierał element <ejb-local-ref> dla komponentu bean, który zdefiniował lokalną nazwę JNDI. W przypadku projektu EJB element <ejb-local-ref> jest dodawany do każdego komponentu bean, który jest zdefiniowany w pliku ejb-jar.xml. W przypadku pliku web.xml do komponentu bean, który zdefiniował lokalną nazwę JNDI, dodawane jest jedno odwołanie. W obu tych przypadkach nazwa <ejb-local-ref> JNDI jest dodawana do pliku powiązań projektu.