2013-10-06 3 views
-2

StackTrace:org.springframework.beans.factory.NoUniqueBeanDefinitionException

org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [org.vliv.dao.MySqlLogDao] is defined: expected single matching bean but found 2: mySqlLogDaoImpl,mySqlLogDao 

Java код:

public interface MysqlDao { 
    public void regstr(); 
} 

@Repository 
@Transactional 
public class MysqlDaoImpl { 
    public void regstr() {} 
} 

@Controller 
public class Brand { 
    @Autowired 
    MySqlDao mySqlDao;//gives exception 
} 
+0

Что ваш вопрос? Также опубликуйте свой файл контекста приложения. – Reimeus

+0

. Пожалуйста, приложите усилия, чтобы описать свою проблему на понятном английском языке перед копированием/вставкой Исключения. И используйте возможности форматирования SO, чтобы заключить код и исключение в блок кода для лучшего чтения. –

ответ

1

Исключение довольно ясно. В вашем контексте приложения есть 2 компонента, которые реализуют интерфейс, который вы подключаете к контроллеру.

Весна не знает, какой из них вы действительно хотите, поэтому она бросает исключение. Попробуйте использовать аннотацию @Qualifier, чтобы указать, реализация которых вы на самом деле хотите:

Смотрите документацию апи здесь:

http://docs.spring.io/spring/docs/3.1.4.RELEASE/javadoc-api/org/springframework/beans/factory/annotation/Qualifier.html

+0

в ApplicationContext мы также настроили . – ritesh

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

  • Нет связанных вопросов^_^