Bonjour,
Lors de la récupération d'instances Spring,
if (StringUtils.isNotBlank(searchOptions.getQuery())) { serviceSearcher = ApplicationContextManager.getCoreContextBean("fullTextServiceSearcher", ServiceSearcherImpl.class); } else { serviceSearcher = ApplicationContextManager.getCoreContextBean("aggregateServiceSearcher", AggregationQuerySearcher.class); }
Dans ce cas, c'est problématique, car s'il est possible d'étendre le comportement de ServiceSearcherImpl (en remplaçant la définition du bean "fullTextServicerSearcher"), il n'est pas possible d'en faire de même pour "aggregateServiceSearcher" sans recopier les éventuels attributs faits dans la classe étendue (+ comportement), car AggregationQuerySearcher hérite déjà de ServiceSearcherImpl.
Exemple
CustomFullTextServiceSearcher --> ServiceSearcherImpl
CustomAggregationServiceSearcher --> AggregationQuerySearcher
Il faudrait supprimer la vérification sur le type lors de la récupération du bean, et ne valider que l'interface ServiceSearcher.