I am trying to develop web application using SpringBoot and Postgres Database. However, on connecting to the application, I am getting error \"Failed to determine a suitable
The issue is resolved by creating two beans. Separate bean is created for DataSource and NamedParameterJdbcTemplate.
@Bean
public DataSource dataSource(){
System.out.println(driverClass+" "+ url+" "+username+" "+password);
DriverManagerDataSource source = new DriverManagerDataSource();
source.setDriverClassName(driverClass);
source.setUrl(url);
source.setUsername(username);
source.setPassword(password);
return source;
}
@Bean
public NamedParameterJdbcTemplate namedParameterJdbcTemplate(){
NamedParameterJdbcTemplate namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(this.dataSource());
return namedParameterJdbcTemplate;
}
After taking a time, I realized that I've created the Datasource class outside the application package. Check this may help.
For me the error was
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).
and the issue was missing profile so I added the following in the classpath and it worked
spring.profiles.active=dev