标签:ica simple one int bean err ini catch for
public static<T> T getBean(Class<T> clazz) { T t = null; try { //throw new NoSuchBeanDefinitionException(""); t = getApplicationContext().getBean(clazz); } catch (NoSuchBeanDefinitionException e) { if(clazz.isInterface()){ HSFSpringConsumerBean consumer=new HSFSpringConsumerBean(); consumer.setInterfaceName(clazz.getName()); consumer.setVersion("1.0.0"); consumer.setGroup("light"); try { consumer.init(); t = (T) consumer.getObject(); } catch (Exception e1) { throw new CommonException(String.format("error to consume the service %s.",clazz.getName()),e); } }else{ String nameString =clazz.getSimpleName(); nameString = (nameString.substring(0, 1)).toLowerCase()+nameString.substring(1); if(SpringContextUtil.registry!=null){ boolean containBean = SpringContextUtil.containsBean(nameString); if (!containBean) { registry.registerBeanDefinition(nameString, SpringContextUtil.getDefinition(clazz)); } Object o = getApplicationContext().getBean(nameString); t = (T) o; } } } return t; }
标签:ica simple one int bean err ini catch for
原文地址:https://www.cnblogs.com/fjinlong/p/9097023.html