public BeanManager getBeanManager() { try { return (BeanManager) new InitialContext().lookup("java:comp/BeanManager"); } catch (NamingException e) { return null; } } public Object getBeanByName(String name) { BeanManager bm = getBeanManager(); Bean bean = bm.getBeans(name).iterator().next(); CreationalContext ctx = bm.createCreationalContext(bean); Object o = bm.getReference(bean, bean.getClass(), ctx); return o; } public Object getAsObject(FacesContext facesContext, UIComponent component, String value) { if (value == null || value.length() == 0) { return null; } return ((OwnerFacade) getBeanByName("ownerFacade")).find(getKey(value)); }