You can simply do it with the following method:
1 2 3 4 5 6 7 8 9 | public static <T> T getBeanInstance( final Class<T> type, final Class<? extends Annotation> scope, final BeanManager beanManager) { final Context context = beanManager.getContext(scope); final Set<<Bean<?>> beans = beanManager.getBeans(type); final Bean<T> bean = (Bean<T>) beanManager.resolve(beans); final CreationalContext<T> creationalContext = beanManager.createCreationalContext(bean); return context.get(bean, creationalContext); } |