SpringBoot + Database + Elasticsearch отключить автоконфигурацию JPA - PullRequest
0 голосов
/ 25 октября 2018

У меня есть приложение Springboot, которое подключается как к Elasticsearch, так и к базе данных.Сначала я использовал функции данных Spring, такие как JpaRepository и ElasticsearchRepository, но я хотел бы начать использовать JdbcTemplate и ElasticSearchTemplate.Я удалил все связанные с Jpa сервисы и аннотации, такие как @Entity, @Id, и создал свою собственную конфигурацию, но Spring все еще хочет создать EntityManagerFactory и использовать Hiberante и так далее.Что мне делать?

Вот мой конфиг

@Bean(name = DE_DATABASE_BEAN_NAME)
    @ConfigurationProperties(prefix = "spring.de")
    @Primary
    public DataSource deDBDataSource() {
        return DataSourceBuilder.create().build();
    }

    @Bean(name = DE_DATABASE_JDBC_TEMPLATE_NAME)
    public JdbcTemplate jdbcTemplate(@Qualifier(DE_DATABASE_BEAN_NAME) final DataSource dataSource) {
        return new JdbcTemplate(dataSource);
    }

    @Bean(name = DE_ELASTICSEARCH_TEMPLATE_NAME)
    public ElasticsearchTemplate elasticsearchTemplate() throws UnknownHostException {
        final String server = clusterNodes.split(":")[0];
        final Integer port = Integer.parseInt(clusterNodes.split(":")[1]);
        final Settings settings = Settings.builder().put("cluster.name", clusterName).build();
        final Client client = new PreBuiltTransportClient(settings).addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(server), port));
        return new ElasticsearchTemplate(client);
    }

И моя трассировка стека

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Unsatisfied dependency expressed through method 'entityManagerFactory' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'entityManagerFactoryBuilder' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Unsatisfied dependency expressed through method 'entityManagerFactoryBuilder' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaVendorAdapter' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.orm.jpa.JpaVendorAdapter]: Factory method 'jpaVendorAdapter' threw exception; nested exception is java.lang.IllegalArgumentException: jdbcUrl is required with driverClassName.
...