Skip to content

DataSourceBuilder triggers an NPE in Hikari when trying to build a DataSource with a JDBC URL for an unknown driver #44994

Closed
@wilkinsona

Description

@wilkinsona
DataSourceBuilder.create()
	.url("jdbc:example://localhost:1234/example")
	.type(HikariDataSource.class)
	.build();
java.lang.NullPointerException
	at java.base/java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011)
	at java.base/java.util.concurrent.ConcurrentHashMap.putIfAbsent(ConcurrentHashMap.java:1541)
	at java.base/java.lang.ClassLoader.getClassLoadingLock(ClassLoader.java:671)
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:651)
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
	at com.zaxxer.hikari.HikariConfig.attemptFromContextLoader(HikariConfig.java:973)
	at com.zaxxer.hikari.HikariConfig.setDriverClassName(HikariConfig.java:483)
	at org.springframework.boot.jdbc.DataSourceBuilder$MappedDataSourceProperty.set(DataSourceBuilder.java:480)
	at org.springframework.boot.jdbc.DataSourceBuilder$MappedDataSourceProperties.set(DataSourceBuilder.java:374)
	at org.springframework.boot.jdbc.DataSourceBuilder.build(DataSourceBuilder.java:193)
	…

It should leave the driver class name unset if it cannot be derived from the JDBC URL.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions