L'utilisation de plusieurs modules Spring Data dans un projet est possible mais nécessite une attention particulière à la configuration.
Avoir plus d'un module Spring Data sur le chemin de classe permet une configuration stricte qui est requise pour que Spring Data fasse la distinction entre la responsabilité du référentiel. Cela se fait principalement par des annotations et si un référentiel particulier s'inscrit dans la hiérarchie des types. Dans votre cas, Goal
est annoté avec les annotations MongoDB et Elasticsearch, de sorte que les deux modules ressentent le besoin d'implémenter des référentiels.
Le seul moyen jusqu'à présent est de conserver les référentiels dans différents packages et d'utiliser ces packages comme packages de base dans @Enable…Repositories
. En supposant que vos référentiels Elasticsearch se trouvent dans org.jhipster.elasticsearch.repository
la configuration de votre application pourrait ressembler à :
@EnableMongoRepositories("org.jhipster.mongo.repository")
@EnableElasticsearchRepositories("org.jhipster.elasticsearch.repository")
@SpringBootApplication
public class SpringBootApplication { … }
HTH, Marc