Az EJB-k JBoss-specifikus telepítésleírója
(jboss.xml) tartalmazhat
JNDI neveket az ejb-jar.xml fájlban
meghatározott EJB helyi hivatkozásokhoz.
Ezek a hivatkozások JNDI nevükre képezik le az EJB helyi hivatkozásokat.
A hivatkozások WebSphere alkalmazáskiszolgálón való megfelelő működéséhez
az információkat át kell helyezni a WebSphere alkalmazáskiszolgálóhoz
tartozó kötésfájlba.
Ez a szabály megjelöli a jboss.xml
fájlban talált EJB helyi hivatkozásokat, ha a forráselemzőben elérhető
megfelelő gyorsjavítás még nem lett alkalmazva. A gyorsjavítás
alkalmazását követően a rendszer az átállítás megtörténtét jelző
megjegyzéssel látja el a JBoss XML fájlt.
Ennek célja, hogy segítségével
megállapítható legyen a gyorsjavítás futtatásának szükségessége, illetve
az átállítás végén annak jelzésére is használható, hogy az XML fájl milyen
mértékben került átállításra.
A gyorsjavítás alkalmazásakor a JNDI át lesz másolva a
jboss.xml fájlból a WebSphere EJB
kötésfájlba.
Például a következő példa egy MyBean elemre való hivatkozást
meghatározó MyBean2 elemet mutat be.
Először az <ejb-local-ref> elem kerül meghatározásra az
ejb-jar.xml fájlban:
< span class="Code"> < ejb-jar>
< átívelő osztály= "indent2"> < /span> < enterprise-beans>
< átívelő osztály= "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>Tároló</transaction-type>
<jndi-name>ejb.MyBean</ejb-name>
...
</session>
< átívelő osztály= "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>Tároló</transaction-type>
<ejb-local-ref>
<description></description>
<ejb-ref-name>ejb/MyBean</ejb-ref-name>
<ejb-ref-type>Szekció</ejb-ref-type>
<local-home>com.ibm.ejb.MyBeanHome</local-home>
<local>com.ibm.ejb.MyBean</local>
</ejb-local-ref>
< span: "indent4"> < /span> < span class="indent2"><jndi-name>ejb.MyBean2</ejb-name>
...
</session>
< átívelő osztály= "indent2"> < /span> < enterprise-beans>
Ejb-jar>
Ezután a megfelelő <ejb-local-ref>
JNDI név van meghatározva a jboss.xml
fájlban:
> jboss>
< átívelő osztály= "indent2"> < /span> < enterprise-beans>
< átívelő osztály= "indent4"> < /span> < session>
<ejb-name>MyBean</ejb-name>
<jndi-name>ejb.MyBean</jndi-name>
</session>
< átívelő osztály= "indent4"> < /span> < session>
<ejb-name>MyBean2</ejb-name>
<jndi-name>ejb.MyBean2</jndi-name>
<ejb-local-ref>
<ejb-ref-name>ejb/MyBean</ejb-ref-name>
<local-jndi-name>ejb.MyBean</jndi-name>
</ejb-local-ref>
</session>
</enterprise-beans>
</jboss>
A gyorsjavítás hozzáadja az ejb.MyBean
JNDI nevet a kötésfájlhoz, és társítja azt a MyBean2
ejb/MyBean helyi hivatkozásával.
Amennyiben a kötésfájl nem létezik, úgy a rendszer létrehozza azt.
A Java kódon belül az elnevezési kontextusra a következő példában látható
módon lehet hivatkozni:
class="Code"> < span class= "indent4"> < /span>javax.naming.Context ctx = új javax.naming.InitialContext();
Object beanRef = ctx.lookup("java:comp/env/ejb/MyBean");