package org.jboss.seam.remoting; import javax.enterprise.inject.spi.Bean; import javax.enterprise.inject.spi.BeanManager; import javax.servlet.ServletContext; import org.jboss.seam.remoting.model.ModelHandler; import org.jboss.solder.beanManager.BeanManagerLocator; public class NonInjectionRemoting extends Remoting { private static final long serialVersionUID = -8985912269669096603L; private static BeanManager getBeanManager(ServletContext ctx) { return new BeanManagerLocator().getBeanManager(); } @SuppressWarnings("unchecked") @Override protected ExecutionHandler getExecutionHandler() { BeanManager beanManager = getBeanManager(getServletConfig().getServletContext()); Bean<ExecutionHandler> bean = (Bean<ExecutionHandler>) beanManager.getBeans( ExecutionHandler.class).iterator().next(); return bean.create(beanManager.createCreationalContext(bean)); } @SuppressWarnings("unchecked") @Override protected InterfaceGenerator getInterfaceHandler() { BeanManager beanManager = getBeanManager(getServletConfig().getServletContext()); Bean<InterfaceGenerator> bean = (Bean<InterfaceGenerator>) beanManager.getBeans( InterfaceGenerator.class).iterator().next(); return bean.create(beanManager.createCreationalContext(bean)); } @SuppressWarnings("unchecked") @Override protected ModelHandler getModelHandler() { BeanManager beanManager = getBeanManager(getServletConfig().getServletContext()); Bean<ModelHandler> bean = (Bean<ModelHandler>) beanManager.getBeans( ModelHandler.class).iterator().next(); return bean.create(beanManager.createCreationalContext(bean)); } }