We’ve updated Microsoft JDBC drivers for SQL Server that are bundled with ReadyAPI
I Installed ReadyApi 3.9.2 and none of my jdbc connections will work on various projects. The common Complaint is:
Failed to get a connection for the specified properties; com.microsoft.sqlserver.jdbc.SQLServerException: This driver is not configured for integrated authentication. ClientConnectionId:a4128829-7b7c-4a14-b93a-0404c13e0064
I always copy over the existing sqljdbc_auth.dll to my existing ...SmartBear\ReadyAPI-3.9.2\bin folder during new version installs.
I even downloaded the current new ms \sqljdbc_9.4\enu\auth\x64\mssql-jdbc_auth-9.4.0.x64.dll and have copied that to the ...SmartBear\ReadyAPI-3.9.2\bin folder, then restarted ReadyApi and I still get the Failed to get a connection message on multiple existing jdbc connections.
I have tried renaming the file, I have tried using the old auth.dll file, I have tried using the new 9.4.0 auth.dll file and nothing is working.
Connection strings generally look like:
Does anyone know how to get integrated Security to work with the new drivers?
I am just now finding some different possible values to use for auth per the MS info at: https://docs.microsoft.com/en-us/sql/connect/jdbc/setting-the-connection-properties?view=sql-server-...
I will try the ActiveDirectoryIntegrated value.
(Version 6.0+) This optional property indicates which authentication method to use for connection. Possible values are ActiveDirectoryIntegrated, ActiveDirectoryPassword, ActiveDirectoryMSI (version 7.2+), ActiveDirectoryInteractive (version 9.2+), ActiveDirectoryServicePrincipal (version 9.2+), SqlPassword, and the default NotSpecified.
Solved! Go to Solution.
Sorry, just to be clear. Are you saying you upgraded your ReadyAPI! version to v3.9.2 and since upgrading from ReadyAPI version 'X' to ReadyAPI v3.9.2, your SQLServer connections no longer work, or do you mean something different?
Is the ReadyAPI version the only thing that changed?
ReadyAPI v3.9.2 has Java 16 bundled with it (according to what ive just read), and if youre saying your previous JDBC/JTDS connections worked fine on a previous ReadyAPI version, but after upgrading to v3.9.2 the db connections are broken then thats likely to be the cause of your issue. I.e. the version of Java being used differs to version prior to the upgrade
Your JDBC/JDTS .jars use specific versions of Java and so youll need to ensure the version of Java running on your machine is the version that is supported by your JDBC/JTDS drivers.
Whenever setting up a db connection i determine the following:
1. What version of the RDBMS (Oracle 12? SQLServer 16?) am i connecting to?
2. What JDBC driver files are required to my specific database version?
3. What type of authentication will i be using to connect? Windows? SQL? MIxed mode?
4. What versions of JDBC drivers are required to connect to the specific version of RDBMS?
5. What version of Java supports the JDBC drivers i need to use to connect to my DB?
6. What are the connection string/url properties/parameters i need to set, to configure the connection to my DB. There are standard ones for each RDBMS, but there are additional optionals that have to be set correctly before successful connection can be made. The DBA who administers your DB would be a ble to tell you this, but these config parms in your connection string wouldnt have changed based on changing readyapi version - theyd only change if there was a change at the server end of things.
Oh.....i dont know if you get 32bit as well as 64bit ReadyAPI anymore, but your version of Java has to match the "bit type". So if using 32bit ReadyAPI, then your Java must be 32bit. if you're using 64bit ReadyAPI, then your Java needs to be 64bit
Yes you are correct in understanding my issue. Upgrade from ReadyAPI 3.9.1 to 3.9.2 and jdbc connections are failing. My understanding is that readyApi uses a self-contained Java - unless you specifically tell it to use your local installation.
I will see about updating Java - but considering all you mention about java - it has been working with ReadyAPI for at least the last 10 version upgrades. I am on Windows 10 and use 64 bit versions of applications when available.
My current java version is:
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) Client VM (build 25.161-b12, mixed mode, sharing)
While trying a few things, I noticed the ms sql jar file (mssql-jdbc-9.2.1.jre15.jar) that comes with ReadyApi is version 9.2 - which was released in January 2021, and is NOT the Latest file available from MS. C:\Program Files\SmartBear\ReadyAPI-3.9.2\bin\ext\mssql-jdbc-9.2.1.jre15.jar
So I went to get the 9.2 version of jdbc drivers to use that auth.dll file (mssql-jdbc_auth-9.2.1.x64.dll). IT WORKS!
Anyone who may run into this issue - you can find the MS jdbc driver file here: https://docs.microsoft.com/en-us/sql/connect/jdbc/release-notes-for-the-jdbc-driver?view=sql-server-...
Long story short the readyapi Release notes are bit inaccurate. At this link: https://support.smartbear.com/readyapi/docs/general-info/version-history/features-added-to-ver-3-9-2... It says:
We’ve updated Microsoft JDBC drivers for SQL Server that are bundled with ReadyAPI. New driver version includes new features and bug fixes. The full list of changes you can find on the Microsoft’s web site.
That link takes you to the 9.4 Version which that Auth.dll file is throwing the Complaints about - This driver is not configured for integrated authentication.