Viselkedés megváltozása Enterprise JavaBeans komponensek kikeresésekor a Liberty korábbi változataiban

A Liberty 20.0.0.12 előtti változataiban az EJB komponensek nincsenek kiszolgáló gyökér Java Naming and Directory Interface (JNDI) névteréhez kötve, ahogyan a hagyományos WebSphere Application Server kiszolgálón, így a @EJB kikeresések és összerendelések ibm-ejb-jar-bnd.xml vagy ibm-web-bnd.xml fájljai költöztetést igényelhetnek. Liberty 20.0.0.12 vagy újabb használata esetén ezeknek a kikereséseknek hordozható JNDI szintaxist kell használniuk azokhoz az EJB komponensekhez, amelyek gazdagépe ugyanaz a kiszolgáló, és corbaname: URL címeket az olyan EJB komponensek esetében, amelyek gazdagépe másik kiszolgáló.

A Liberty 20.0.0.12 előtti változataiban csak a következő névterek kerültek elfogadásra:

Ez a szabály a következőket jelöli meg: @EJB Annotációk egy lookup Attribútumérték, amely nem a fent felsorolt névterek egyikével kezdődik.


//this lookup will be flagged
@Stateless
@EJB(lookup="ejb/myApp/myModule/MyBeanComponent")

A szabály az "ejblocal:" kifejezéssel kezdődő karaktersorozat literálokat ismegjelöli.


//this will be flagged
new InitialContext().lookup("ejblocal:" + getEJBName());

A szabály olyan JNDI neveket is megjelöli, amelyek a fent felsorolt névterek egyikét sem használják binding-name Attribútum értéke a termékben <ejb-ref> Elem a ibm-ejb-jar-bnd.xml és a ibm-web-bnd.xml fájlban.


//this binding will not be flagged
<ejb-ref name="TestBean" binding-name="java:global/TestApp/TestModule/TestBean!test.TestRemoteInterface">

A szabály olyan JNDI neveket is megjelöli, amelyek a fent felsorolt névterek egyikét sem használják jndiName Attribútum értéke a termékben <ejbRefBindings> Elem a ibm-ejb-jar-bnd.xmi és a ibm-web-bnd.xmi fájlban.

\tcode> // ezt a JNDI nevet aejbRefBindings jndiName= "java:myFolder/"> < /code>

Az Enterprise Java Beans 2.x használatáról Liberty rendszerben a következő helyen talál további információkat: Enterprise JavaBeans használata távoli felületekkel Liberty kiszolgálón.