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には移行されたことを示すコメントが付けられる。
これは、自動修正を実行するかどうかを決定するために使用されます。 で使用することができる。
自動修正が適用されると、JNDI名は<span.xml>ファイルから<span.xml>ファイルにコピーされる。 ファイルからweblogic-ejb-jar.xml ファイルにコピーされます。 WebSphere Liberty ファイルにコピーされます。
例えば、以下の例では、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>ステートレス</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>ステートレス</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");