EJB용 WebLogic 특정 배치 디스크립터인 weblogic-ejb-jar.xml에는
ejb-jar.xml에 정의된 EJB 로컬 참조의 JNDI 이름이 포함될 수 있습니다. 이 참조는 EJB 로컬 참조를 JNDI 이름에 맵핑합니다.
이 참조가 WebSphere Application Server에서 올바르게 작동하려면 WebSphere Application Server
바인딩 파일로 정보를 이동해야 합니다.
이 규칙은 weblogic-ejb-jar.xml 파일에서 찾은 EJB 로컬 참조를 플래그 지정합니다.
자동 수정이 제공됩니다. 자동 수정이 적용된 후에는 적용되면 WebLogic XML에 마이그레이션되었음을 나타내는 주석이 표시됩니다.
이 값은 자동 수정 실행 여부를 결정하는 데 사용되며, 마이그레이션이 끝날 때 다음과 같이 사용할 수 있습니다 마이그레이션이 끝날 때 XML 파일의 마이그레이션된 양을 나타내는 데 사용할 수 있습니다.
자동화된 수정이 적용되면 JNDI 이름이 weblogic-ejb-jar.xml 파일에서 WebSphere 기존 및 Liberty EJB 바인딩 파일로 복사됩니다.
예를 들어, 다음 예제는 MyBean 참조를 정의하는 MyBean2를 표시합니다.
먼저, <ejb-local-ref>가 정의됩니다 ejb-jar.xml 파일에 정의합니다:
< span class = "Code"> < ejb-jar>
< span class= "indent2"> < /span> < enterprise-beans>
< span class= "indent4"> < /span> < session>
<display-name>MyBean</display-name>
<ejb-name>MyBean</ejb-name>
<home>com.ibm.ejb.MyBeanHome</home>
<remote>com.ibm.ejb.MyBean</remote>
<ejb-class>com.ibm.ejb.MyBeanBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>컨테이너</transaction-type>
< span class= "indent4"> < /span> < span class="indent2"> < /span> < jndi-name>ejb.MyBean< /ejb-name>
...
</session>
< span class= "indent4"> < /span> < session>
<display-name>MyBean2</display-name>
<ejb-name>MyBean2</ejb-name>
<home>com.ibm.ejb.MyBean2Home</home>
<remote>com.ibm.ejb.MyBean2</remote>
<ejb-class>com.ibm.ejb.MyBean2Bean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>컨테이너</transaction-type>
< span class= "indent4"> < /span> < span class="indent2"> < /span> < ejb-local-ref>
<description></description>
<ejb-ref-name>ejb/MyBean</ejb-ref-name>
<ejb-ref-type>세션</ejb-ref-type>
<local-home>com.ibm.ejb.MyBeanHome</local-home>
<local>com.ibm.ejb.MyBean</local>
</ejb-local-ref>
< span class= "indent4"> < /span> < span class="indent2"><jndi-name>ejb.MyBean2</ejb-name>
...
</session>
< span class= "indent2"> < /span> < enterprise-beans>
< ejb-jar>
그리고, 대응되는 <ejb-local-ref> JNDI 이름은
weblogic-ejb-jar.xml 파일에 정의되어 있습니다.
< weblogic-ejb-jar>
< span class= "indent2"> < /span> < weblogic-enterprise-bean>
<ejb-name>MyBean</ejb-name>
<jndi-name>ejb.MyBean</jndi-name>
</weblogic-enterprise-bean>
< span class= "indent2"> < /span> < weblogic-enterprise-bean>
<ejb-name>MyBean2</ejb-name>
< span class= "indent4"> < /span> < ejb-local-reference-description>
<ejb-ref-name>ejb/MyBean</ejb-ref-name>
<jndi-name>ejb.MyBean</jndi-name>
</ejb-local-reference-description>
<jndi-name>ejb.MyBean2</jndi-name>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>
자동화된 수정은 바인딩 파일에 ejb.MyBean JNDI 이름을 바인딩 파일에 추가하고 를 바인딩 파일에 대한 ejb/MyBean 에 대한 로컬 참조 MyBean2.
바인딩 파일이 없는 경우, 한 개의 파일이 작성됩니다.
Java 코드에서는 이름 지정 컨텍스트를 다음 예제에서처럼 참조할 수 있습니다.
< span class="Code"> < span class= "indent4"> < /span>javax.naming.Context ctx = new javax.naming.InitialContext();
Object beanRef = ctx.lookup("java:comp/env/ejb/MyBean");