WebLogic 및 JBoss 애플리케이션에서 <local-jndi-name> 요소는 글로벌 JNDI 트리에 있는 Bean의 로컬 홈에 대한 JNDI 이름을 정의합니다. weblogic-ejb-jar.xml 또는 jboss.xml 파일에 정의됩니다.
WebSphere(R)는 글로벌 JNDI 트리에 있는 JNDI 이름에 대해 로컬 홈의 맵핑을 허용하지 않습니다. 대신, 로컬 컨테이너의 JNDI 트리에 맵핑됩니다. 따라서, 프로그래머는 글로벌 네임스페이스의 JNDI 이름이 아닌 로컬 네임스페이스의 JNDI 참조를 사용하여 로컬 엔터프라이즈 Bean에 액세스해야 합니다.
이 규칙은 다음에서 <local-jndi-name> 요소가 발견될 때 트리거됩니다 weblogic-ejb-jar.xml 또는 jboss.xml에서 발견될 때 트리거됩니다. 자동화된 수정은 Java 파일, 배포 설명자 및 바인딩을 처리하여 이러한 참조가 참조가 WebSphere 에서 작동하도록 합니다.
<local-jndi-name> 요소가 있는 애플리케이션에 관련된 모든 패키지가 처리됩니다. 애플리케이션 EAR 프로젝트가 발견되지 않거나 발견된 EJB 프로젝트에 연관되지 않는 경우, EJB 프로젝트만 처리됩니다. 관련 프로젝트를 올바르게 정의하는 것이 중요합니다.
자동 수정이 사용 가능하고 적용되면 애플리케이션에서 Java 파일 중 <local-jndi-name>이 발견됩니다. 로컬 JNDI 이름에 대한 직접 컨텍스트 검색을 스캔하고 해당 이름에 대한 EJB 참조의 검색도 스캔합니다.
예를 들어, 로컬 JNDI 이름이 ejb/myBeanLocalHome , 다음 코드 예제는 코드, 배치 디스크립터 및 바인딩 또는 둘 다에 대한 업데이트를 트리거합니다.Java 코드는 첫 번째 예제에서 다음과 같이 변경됩니다. ctx.lookup("java:comp/ejb/myBeanLocalHome") 를 사용하여 eJB 참조 조회가 수행됩니다. 기타 두 개의 Java 예제는 변경되지 않습니다. 세 가지 경우 모두 자동화된 수정으로 프로젝트의 배포 설명자 및 바인딩이 업데이트됩니다.
프로젝트에서 특정 로컬 JNDI 이름이 발견되는 경우, 그리고 변수가 사용되고 발견을 판별할 수 없는 경우에는 web.xml 파일 또는 ejb-jar.xml 파일이 로컬 JNDI 이름에 정의된 Bean의 <ejb-local-ref>를 포함하도록 수정됩니다. EJB 프로젝트의 경우, <ejb-local-ref> 요소는 ejb-jar.xml에 정의된 각 Bean에 추가됩니다. web.xml 파일의 경우, 한 개의 참조가 로컬 JNDI 이름을 정의한 Bean에 추가됩니다. 이 두 가지 경우에 대해, <ejb-local-ref> JNDI 이름은 해당 프로젝트의 바인딩 파일에 추가됩니다.