In my application I am using both Mongo and Aerospike. While creating AerospikeConfig I have to autowire MappingAerospikeConverter and while creating this bean i am getting internal conflicts with bean name.
ERROR
APPLICATION FAILED TO START
Description:
Parameter 1 of constructor in org.springframework.data.aerospike.convert.MappingAerospikeConverter required a single bean, but 3 were found: - org.springframework.data.aerospike.convert.CustomConversions: defined in null - customConversions: defined by method 'customConversions' in class path resource [com/spring/rule/engine/config/RuleEngineConfig.class] - mongoCustomConversions: defined by method 'mongoCustomConversions' in class path resource [org/springframework/boot/autoconfigure/data/mongo/MongoDataConfiguration.class]
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import org.springframework.data.aerospike.cache.AerospikeCacheManager;
import org.springframework.data.aerospike.convert.AerospikeTypeAliasAccessor;
import org.springframework.data.aerospike.convert.MappingAerospikeConverter;
import org.springframework.data.aerospike.mapping.AerospikeMappingContext;
import org.springframework.data.mapping.model.SimpleTypeHolder;
import com.aerospike.client.AerospikeClient;
@EnableAutoConfiguration
@Configuration
@Import(value = {MappingAerospikeConverter.class, AerospikeMappingContext.class, AerospikeTypeAliasAccessor.class,
SimpleTypeHolder.class})
public class AerospikeConfig {
@Value("${fs.aerospike.hostName}")
private String hostName;
@Value("${fs.aerospike.portNumber}")
private int port;
@Autowired
private MappingAerospikeConverter mappingAerospikeConverter;
@Bean
public AerospikeClient aerospike() {
return new AerospikeClient(hostName, port);
}
@Bean
public AerospikeCacheManager cacheManager(AerospikeClient aerospikeClient) {
return new AerospikeCacheManager(aerospikeClient, mappingAerospikeConverter);
}
}