Na serveru Liberty před verzí 20.0.0.12 byly objekty Enterprise JavaBeans (EJB) vázány pouze na obor názvů java:[scope]. Objekty typu EJB bean nebyly vázány na obor názvů rozhraní JNDI (Java Naming and Directory Interface) kořenového adresáře serveru, což znamená, že nemůžete definovat názvy vazeb rozhraní JNDI. Atributy vazby EJB, které umožňují zadat název rozhraní JNDI na serveru WebSphere Application Server Traditional, byly ignorovány na serveru Liberty.
Následující atributy vazby EJB ze souboru ibm-ejb-jar-bnd.xml byly na serveru Liberty ignorovány.
session simple-binding-namesession component-idsession local-home-binding-namesession remote-home-binding-nameinterface binding-nameNásledující atributy vazby EJB ze souboru ibm-ejb-jar-bnd.xmi byly na serveru Liberty ignorovány.
ejbBindings jndiNameToto pravidlo označí všechny názvy vazeb rozhraní JNDI, které byly v Liberty ignorovány před 20.0.0.12. Pokud vaše aplikace používá tyto názvy v přímém vyhledávání rozhraní JNDI místo použití odkazů EJB, musíte použít Liberty verze 20.0.0.12 nebo novější nebo aplikaci upravit.
Použijete-li odkazy EJB, pravidlo Změna chování při vyhledávání objektů Enterprise JavaBean v předchozích verzí Liberty označí veškeré názvy rozhraní JNDI, které musí být převedeny na obor názvů java:, používáte-li verzi Liberty starší než 20.0.0.12.
Nepoužíváte-li odkazy EJB a používáte verzi Liberty starší než 20.0.0.12, doporučuje se použít novější verzi Liberty nebo vytvořit odkaz EJB pomocí stejného názvu rozhraní JNDI a nastavit odkaz EJB binding-name na název rozhraní JNDI java:[scope]. Nepřidáte-li odkaz EJB, musíte prohledat kód Java pro použití těchto názvů rozhraní JNDI a převést vyhledávací název na název rozhraní JNDI java:.
.
Následující příklad vytvoří odkaz EJB, který vám pomůže s migrací jakýchkoli problémů s vyhledáváním, pokud nepoužíváte produkt Liberty verze 20.0.0.12 nebo novější.
Odkazovaný objekt EJB:
Vzdálené rozhraní:
Dále jsou uvedeny příklady, jak deklarovat odkaz EJB v Liberty. Je požadováno buď 1a, nebo 1b ve spojení s 2a, 2b, 3a nebo 3b, aby bylo možné úspěšně propojit EJB a jeho odkaz. Např. doporučené volby jsou 1a a 2b pro snadné a úspěšné nastavení, ale pokud je 1b deklarováno ve spojení s 3b, získáte stejnou funkčnost jako doporučené nastavení.
beanName musí být do anotace @EJB přidán element. Pokud používáte ejb-jar.xml nebo web.xml, musí být prvek <ejb-link> přidán ke stávajícímu prvku <span.xml <ejb-ref> elementu. Změny v bodech 1a a 1b jsou uvedeny zde:lookup do anotace @EJB. Pokud používáte ejb-jar.xml nebo web.xml, <lookup-name> je třeba přidat prvek <ejb-ref> ke stávajícímu prvku <ejb-ref>. Změny v bodech 1a a 1b jsou uvedeny zde:
lookup, lookup-name nebo binding-name lze volitelně použít k odkazování na objekty EJB ve stejné aplikaci. V takovém případě může být hodnota nastavena na libovolné vhodné přímé vyhledání EJB popsané na konci této stránky.
Dále je uvedeno konečné vyhledání odkazu EJB:
Volitelně jsou k dispozici tři volby pro vyhledání přímo EJB, nikoli pomocí odkazu EJB:
Podrobnější informace o použití vazeb EJB viz Použití objektů enterprise JavaBeans se vzdálenými rozhraními na serveru Liberty a Přehled vazeb aplikace EJB 3.0 a EJB 3.1.