J'essaie d'obtenir une demande de travail au démarrage, mais je cours dans des erreurs d'injections. J'ai un @service avec quelques classes @Autowire. Les classes Notre Just Pojo avec un Public Sedatsource Code> Méthode que j'ai besoin de définir la DataSource via l'exécution. Voir ci-dessous: ***************************
APPLICATION FAILED TO START
***************************
Description:
Field datasetDao in com.wk.online.services.LicenseService required a single bean, but 3 were found:
- createAuthReadDataSoure: defined by method 'createAuthReadDataSoure' in com.wk.online.ws.OnlineWsApplication
- createOnlineDSReadDataSoure: defined by method 'createOnlineDSReadDataSoure' in com.wk.online.ws.OnlineWsApplication
- createOnlineDSWriteDataSoure: defined by method 'createOnlineDSWriteDataSoure' in com.wk.online.ws.OnlineWsApplication
Action:
Consider marking one of the beans as @Primary, updating the consumer to accept multiple beans, or using @Qualifier to identify the bean that should be consumed
3 Réponses :
Avez-vous Si oui, éloignez-vous d'eux. p>
Code complet de @bean code> Annotation sur les méthodes suivantes dans OnlineWsApplication Code> Classe? P>
créeAuthreaddatasoure code> li>
CreateONLineDsReadDataSoure code> Li>
CreateONlineDswritedataSoure code> Li>
ul>
OnlineWsApplication CODE> serait très utile de le répandre. p>
Oui, c'était la question. Je devais avoir été une longue journée car ce n'était pas évident et je ne l'ai pas vu. Merci beaucoup.
Lors de la définition du haricot, vous devez spécifier le nom, non qualificatif, l'annotation de qualificatif doit être utilisée dans la mesure où vous aurez la diffusion:
@Bean(name = "datasetDao")
public com.lexi.dao.core.DatasetDAO getDatasetDao() throws NamingException {
DatasetDAOImpl ds = new DatasetDAOImpl();
ds.setDataSource(createAuthReadDataSoure());
return ds;
}
dans la définition des haricots, au lieu de @Haricot @Qualifier ("DataSetDao") P>
Essayez d'utiliser ce qui suit: @Bean (Nom = "DataSetDao") P>
Pourriez-vous ajouter du code pour ces 3 méthodes: CreeAuthreadDatasoure, CreateONLineDsReadDataSoure, CreateONLinedSwriitedataSoure ???