2016-01-21 2 views
0

Попытка создать карту боб с областью прототипа в конфигурационном классесоздать карту боб с фабрикой в ​​@Configuration класса

@Configuration 
public class SpringConfig { 

    public SpringConfig() { 
    } 


    @Bean 
    @Scope("prototype") 
    public Map<String, Composite> getCompositesMap() { 
     return new LinkedHashMap<String, Composite>(); 
    } 
} 

Но весна жалуется

org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.eclipse.swt.widgets.Composite] found for dependency [map with value type org.eclipse.swt.widgets.Composite]: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@javax.annotation.Resource(shareable=true, mappedName=, description=, name=, type=class java.lang.Object, authenticationType=CONTAINER, lookup=)} 

Как один определить карту прототипа bean, используя только аннотации (нет xml)?

ответ

0

Ошибка возникает из-за того, что Spring пытается ввести Composite в ваш метод, но нет такого компонента, который соответствует этому классу.

Вы можете добавить прототип бобы в свой класс SpringConfig - see here.

+0

Понял, что можно обеспечить «композитный» компонент. Это не проблема. Проблема в том, что нет необходимости запрашивать компонент «Композитный» в первую очередь. Карта пуста. – scorpdaddy

Смежные вопросы