I am getting an error when trying to create a datasource connection to MS SQL server named instance using JTDS driver within my Spring Config.
My spring datasource configuration is :
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${db.driver}" />
<property name="url" value="${db.jdbcurl}" />
<property name="username" value="${db.username}" />
<property name="password" value="${db.password}" />
</bean>
and db.properties is :
db.driver=net.sourceforge.jtds.jdbc.Driver
db.jdbcurl=jdbc:jtds:sqlserver://SQL_SERVER_HOSTNAME/TEST2012:1433/TESTDB;
db.username=DB_UserName
db.password=DB_Password
In above properties file TEST2012 is an instance of SQL server and TESTDB is database on named instance.
It's throwing below exception :
ERROR: HHH000319: Could not get database metadata
java.sql.SQLException: No suitable driver found for jdbc:jtds:sqlserver://SQL_SERVER_HOSTNAME/TEST2012:1433/TESTDB
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:153)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:144)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:155)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:120)
Any suggestions would be appreciated.
jTDS requires to specify the named instance via a property:
jdbc:jtds:sqlserver://SQL_SERVER_HOSTNAME:1433/TESTDB?instance=TEST2012