Your browser was unable to load all of the resources. They may have been blocked by your firewall, proxy or browser configuration.
Press Ctrl+F5 or Ctrl+Shift+R to have your browser try again.

Migrate error: "SSO Failed: Native SSPI library not loaded." #1837

leo7654321 ·
Hi,

I'm trying to upgrade my QuickBuild 4.0.0 installation to 4.0.38.

My old 4.0.0 installation is under C:\Tools\quickbuild-4.0.0. The database is a Microsoft SQL Server database on another server. To connect to this database, a SSO .DLL called ntlmauth.dll is located in the C:\Tools\quickbuild-4.0.0\ directory, and \conf\hibernate.properties has the appropriate connection string that works.

My new 4.0.38 version is under C:\Tools\quickbuild-4.0.38\. The ntlmauth.dll has been copied there, and the Windows system PATH has been updated to include that directory.

However, the MIGRATE.BAT is not working. No matter if I set the 4.0.38 \conf\hibernate.properties to connect to the old 4.0.0 SQL database, a new SQL database, or the QuickBuild default embedded database, I always get the same errors when running MIGRATE.BAT:

C:\Tools\quickbuild-4.0.38\bin>migrate.bat C:\Tools\quickbuild-4.0.0
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
=====================================================================
2012-05-01 16:12:28,192 INFO - Cleaning temp directory...
2012-05-01 16:12:30,458 INFO - Checking QuickBuild NT service...
2012-05-01 16:12:30,723 INFO - Copying config files...
2012-05-01 16:12:30,802 INFO - Copying assets...
2012-05-01 16:12:30,802 INFO - Copying libs...
2012-05-01 16:12:30,848 INFO - Copying custom plugins...
2012-05-01 16:12:30,880 INFO - Copying sample db...
2012-05-01 16:12:30,895 INFO - Booting QuickBuild from 'C:\Tools\quickbuild-4.0
.0'...
2012-05-01 16:12:30,911 INFO - Starting framework...
2012-05-01 16:12:35,317 INFO - Starting QuickBuild server...
2012-05-01 16:12:35,317 INFO - Starting IOC container...
2012-05-01 16:12:35,864 INFO - Checking database data version...
2012-05-01 16:12:36,130 INFO - Stopping QuickBuild server...
2012-05-01 16:12:37,223 INFO - Stopping task scheduler...
2012-05-01 16:12:37,239 INFO - QuickBuild server stopped.
2012-05-01 16:12:37,473 INFO - Deleting sampledb...
2012-05-01 16:12:37,473 INFO - Booting QuickBuild from 'C:\Tools\quickbuild-4.0
.38'...
2012-05-01 16:12:37,489 INFO - Starting framework...
2012-05-01 16:12:41,755 INFO - Starting QuickBuild server...
2012-05-01 16:12:41,755 INFO - Starting IOC container...
2012-05-01 16:12:42,302 INFO - Checking application data version...
2012-05-01 16:12:42,395 INFO - Stopping QuickBuild server...
2012-05-01 16:12:43,130 INFO - Stopping task scheduler...
2012-05-01 16:12:43,145 INFO - QuickBuild server stopped.
Exception in thread "main" java.lang.RuntimeException: java.sql.SQLException: I/
O Error: SSO Failed: Native SSPI library not loaded. Check the java.library.path
system property.
at com.pmease.quickbuild.bootstrap.BootstrapUtils.wrapAsUnchecked(Bootst
rapUtils.java:58)
at com.pmease.quickbuild.util.ExceptionUtils.wrapAsUnchecked(ExceptionUt
ils.java:82)
at com.pmease.quickbuild.util.DbUtils.getConnection(DbUtils.java:101)
at com.pmease.quickbuild.util.DbUtils.getDataVersion(DbUtils.java:129)
at com.pmease.quickbuild.Quickbuild.getVersion(Quickbuild.java:579)
at com.pmease.quickbuild.bootstrap.Migrate$3.execute(Migrate.java:235)
at com.pmease.quickbuild.Quickbuild.startServer(Quickbuild.java:244)
at com.pmease.quickbuild.Quickbuild.access$3(Quickbuild.java:226)
at com.pmease.quickbuild.Quickbuild$2.run(Quickbuild.java:161)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.sql.SQLException: I/O Error: SSO Failed: Native SSPI library not
loaded. Check the java.library.path system property.
at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:615)
at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java
:345)
at net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java
:50)
at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:184)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at com.pmease.quickbuild.util.DbUtils.getConnection(DbUtils.java:96)
... 7 more
Caused by: java.io.IOException: SSO Failed: Native SSPI library not loaded. Chec
k the java.library.path system property.
at net.sourceforge.jtds.jdbc.TdsCore.sendMSLoginPkt(TdsCore.java:1893)
at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:588)
... 13 more
Press any key to continue . . .

C:\Tools\quickbuild-4.0.38\bin>


I assume this error is telling me that MIGRATE.BAT cannot locate the ntlmauth.dll file. Is that true? I have copied this file all over the place (various QuickBuild dirs under \plugins\, the Java \bin\ directories under \Program Files\) to no avail. I also tried just connecting to the old 4.0.0 SQL database with 4.0.38, but when I ran SERVER.BAT CONSOLE it said that I needed to run MIGRATE to update the database schema.

Any idea what this error is really telling me, and how to correct it? Many thanks.
  • replies 2
  • views 2051
  • stars 0
leo7654321 ·
FYI -- I'd still like to know what's wrong here, but in the meantime I developed a workaround:

1. Backup 4.0.0 SQL database in QuickBuild admin.
2. change 4.0.0 \conf\hibernate.properties to point to default H2 embedded database.
3. Run RESTORE under 4.0.0 using backup from 4.0.0 SQL database.
4. change 4.0.38 \conf\hibernate.properties to point to default H2 embedded database.
5. Run MIGRATE, which completed successfully because there was now no SSO to SQL server database involved.
6. Backup 4.0.38 H2 embedded database in QuickBuild admin.
7. change 4.0.38 \conf\hibernate.properties to point to new SQL database.
8. Run RESTORE under 4.0.38 to new SQL database, using backup from 4.0.38 H2 embedded database.
9. Modify PROPERTIES for new installed QuickBuild service under Windows SERVICES so it has the proper login user and pass for the new SQL database.

Seems like this worked. But if you have any ideas for how to fix the above Java error, I'd appreciate it. Thanks.
robinshen ADMIN ·
Please place the dll under "C:\Tools\quickbuild-4.0.0\plugins\com.pmease.quickbuild.libs", and run migration again to see if it works.