0

I have below application.properties in my application for configuring two datasources and my Spring boot version is 2.1.3.RELEASE

spring.datasource2.url=jdbc:postgresql://localhost:5432/db1
spring.datasource2.username=//username
spring.datasource2.password=//pwd

spring.datasource1.url=jdbc:postgresql://localhost:5432/db2
spring.datasource1.username=//username
spring.datasource1.password=//pwd
spring.datasource1.initialization-mode=always

spring.jpa.hibernate.ddl-auto=none
spring.jpa.properties.hibernate.id.new_generator_mappings=false
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE

spring.h2.console.enabled=true

I get the following error

ContextLoader:296 - Root WebApplicationContext: initialization completed in 3970 ms
 [main] WARN  AnnotationConfigServletWebServerApplicationContext:557 - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration': Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Failed to determine a suitable driver class
2020-12-04 20:47:27 [main] INFO  StandardService:173 - Stopping service [Tomcat]
2020-12-04 20:47:27 [main] INFO  ConditionEvaluationReportLoggingListener:142 - 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2020-12-04 20:47:27 [main] ERROR LoggingFailureAnalysisReporter:42 - 

***************************
APPLICATION FAILED TO START
***************************

Description:

Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine a suitable driver class


Action:

Consider the following:
    If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
    If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).

What I tried so far:

 Disabling DatasourceAutoConfiguration.class, HibernateJPAAutoCOnfiguration.class, TransactionManagerAutoConfiguration.class

It did not work.

How do I resolve this?

Thank you in advance!

0

1 Answer 1

1

As we can see in the error, spring needs url. During Spring boot initialization, spring will look for this property spring.datasource.url=jdbc:postgresql://localhost:5432/postgres

You are using few properties which don't exist in the spring boot properties.

spring.datasource2.url=jdbc:postgresql://localhost:5432/db1
spring.datasource2.username=//username
spring.datasource2.password=//pwd

spring.datasource1.url=jdbc:postgresql://localhost:5432/db2
spring.datasource1.username=//username
spring.datasource1.password=//pwd

If you want to use multiple datasources, you have to programmatically create.

you can refer below links : https://www.baeldung.com/spring-boot-configure-data-source-programmatic

https://www.baeldung.com/spring-data-jpa-multiple-databases

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.