Na serwerze Liberty w wersjach wcześniejszych niż 20.0.0.12 komponenty EJB nie były powiązane z przestrzenią nazw JNDI (Java Naming and Directory Interface)
katalogu głównego serwera (jak ma to miejsce w przypadku serwera WebSphere Application Server traditional), więc
wyszukiwania i powiązania @EJB w plikach ibm-ejb-jar-bnd.xml lub ibm-web-bnd.xml
mogły wymagać migracji. Jeśli nie jest używana wersja Liberty 20.0.0.12 lub nowsza, te wyszukiwania muszą korzystać z przenośnej składni JNDI
w przypadku komponentów EJB, które są udostępniane na tym samym serwerze, i adresów URL
corbaname:
w przypadku komponentów EJB, które są udostępniane na innym serwerze.
W wersjach Liberty wcześniejszych niż 20.0.0.12 były akceptowane tylko następujące przestrzenie nazw:
java:global/java:app/java:module/java:comp/corbaname:Ta reguła oznacza flagą: @EJB adnotacje z lookup wartość atrybutu, która nie rozpoczyna się od żadnej z wymienionych powyżej przestrzeni nazw.
//To wyszukiwanie zostanie oznaczone flagą
@Stateless
@EJB(lookup="ejb/myApp/myModule/MyBeanComponent")
Ponadto ta reguła oznacza także literały łańcuchowe rozpoczynające się od elementu „ejblocal:”.
//To zostanie oznaczone flagą
new InitialContext().lookup("ejblocal:" + getEJBName());
Ta reguła oznacza również nazwy JNDI, które nie używają jednej z wymienionych powyżej przestrzeni nazw binding-name wartość atrybutu w <ejb-ref> w plikach ibm-ejb-jar-bnd.xml i ibm-web-bnd.xml .
< code> // to powiązanie nie zostanie oznaczone jako < ejb-ref name= "TestBean" binding-name="java:global/TestApp/TestModule/TestBean!test.TestRemoteInterface"> < /code>
Ta reguła oznacza również nazwy JNDI, które nie używają jednej z wymienionych powyżej przestrzeni nazw jndiName wartość atrybutu w <ejbRefBindings> w plikach ibm-ejb-jar-bnd.xmi i ibm-web-bnd.xmi .
< code> // ta nazwa JNDI zostanie oznaczona jako <ejbRefBindings jndiName= "java:myFolder/"> < /code>
Więcej informacji o używaniu komponentów Enterprise Java Beans 2.x na serwerze Liberty zawiera temat Używanie komponentów EJB z interfejsami zdalnymi na serwerze Liberty.