I / O错误:SSO失败:未加载本机SSPI库'多个tomcat应用程序[重复]

问题描述 投票:0回答:1

此问题已经在这里有了答案:

[我通过kerberos身份验证与MSSQL数据库建立了Windows集成连接。此外,我正在对SSO使用华夫过滤器。

此连接使用jtds1.3.1.jar文件。 SSO需要ntlmauth.dll。我正在使用tomcat作为我的应用程序服务器。

但是,我注意到这仅适用于一次部署的一个Web应用程序。如果我对多个Web应用程序具有相同的设置,则除了一个之外,所有都将失败。这是很奇怪的行为。知道这里发生了什么

java jdbc windows-authentication
1个回答
0
投票

对不起。我在下面的另一篇文章中找到了解决方案是链接

https://stackoverflow.com/a/10645025/3890202

每个Web应用程序都有其自己的Classloader(将其隔离)。当您调用Class.forName()方法时,有一个静态块正在尝试加载共享库(dll文件)-因此两个Web应用程序都试图加载共享库,因此在第二个加载时出现错误消息尝试加载。

JDBC jar即jtds1.3.1.jar应该从与战争捆绑在一起的位置移到tomcat 7.0 / lib文件夹,并将ntlmauth.dll复制到tomcat / bin文件夹-这样,它将在tomcat父类加载器中,并且该类将仅加载一次。

© www.soinside.com 2019 - 2024. All rights reserved.