org.springframework.beans.factory.BeanCreationException: Error создание bean-компонента с именем «entityManagerFactory», определенным в ресурсе пути к классу [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: невозможно создать запрошенную службу [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] из-за: невозможно определить диалект без метаданных JDBC (пожалуйста, установите «jakarta.persistence.jdbc.url» для распространенных случаев или «hibernate.dialect», если необходимо предоставить собственную реализацию диалекта)
Это сообщение об ошибке не очень полезно для службы поддержки. Кажется, что, поскольку Hibernate не может связаться с SQL-сервером, он не может обнаружить диалект, маскируя фактическую проблему, заключающуюся в том, что сервер недоступен.
Я подозреваю, что если я заставлю Hibernate используйте определенный диалект, он обойдет эту первоначальную ошибку и напрямую выявит основную проблему с подключением.
Я читаю конфигурацию из пользовательской структуры YAML. Вот моя настройка источника данных:
Код: Выделить всё
@Bean
DataSource dataSource(DataSourceProperties props) {
final DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName(props.getDriverClassName());
dataSource.setUrl(props.getUrl());
if (!StringUtils.isBlank(props.getUsername())) {
dataSource.setUsername(props.getUsername());
}
if (!StringUtils.isBlank(props.getPassword())) {
dataSource.setPassword(props.getPassword());
}
log.info("Connecting to {}, user {}", dataSource.getUrl(), props.getUsername());
return dataSource;
}
Подробнее здесь: https://stackoverflow.com/questions/787 ... -in-spring