连接sqlserver数据库时,出现驱动程序无法通过使用安全套接字层(SSL)加密……

有两个服务器,一个是FR应用服务器,一个是数据库服务器

应用服务器:centos8,JAVA:1.8.0.202,FR版本:10.0

数据库服务器:windows2008R2,JAVA:1.8.0.181,数据库:sql server 2008 r2

所有设置均已设好

用Navicat Premium能成功连接sql server

但是在FR里无法连接到sql server,出现错误:

image.png

请问这是怎么回事,我查了网上的教程,说让修改修改jre\lib\security下java.security的文件,我也按照教程修改好了,但还是出错,不知道为什么?

我是修改的应用服务器下的java.security,难道数据库服务器下的java.security也要修改吗?

FineReport nhb2318 发布于 2021-12-18 15:43
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
nhb2318Lv4初级互助
发布于2021-12-20 13:21

我修改的是JAVA安装目录下的java.security文件,但为什么没效果呢,我花一天时间找到原因,其实也很简单:

原因是我的centos8上装了两个JAVA,为什么会装两个我不清楚

我只记得我装好系统后,手动安装了JAVA1.8_202,当时FR可正常使用,tomcat8.5也设置了开机启动,一点问题没有。后来我连接sqlserver2008出现问题后,查阅资料说java.security没设置,可是我设置好了,为什么还不行,苦恼了一天,后来在无意间,我测了一下java版本,输入java -version,得到的结果是JAVA1.8_312,让我大跌眼镜,我没有搞过312的JAVA呀,一看目录还是在use/lib下,这和我手动安装版本不一样呀,果断删除了312版的JAVA ,保留202版本,重新配置了JAVA_HOME,连接成功了。

可是新问题又出现了,我的tomcat8.5不会开机自动运行了,后来经过研究也解决了。

疑惑的是为什么会安装两个JAVA呢?安装时怎么就没有提示呢?这不和windows下的流氓软件一样吗?

最佳回答
0
孤陌Lv6资深互助
发布于2021-12-18 15:50

解决方法:

找到文件>>FineReport_10.0\jre\lib\security\java.security

搜索:jdk.tls.disabledAlgorithms

找到:jdk.tls.disabledAlgorithms=SSLv3,RC4, DES, MD5withRSA, DH keySize < 1024, \

   EC keySize < 224, 3DES_EDE_CBC

改为:jdk.tls.disabledAlgorithms=SSLv3,RC4, DES, MD5withRSA, DH keySize < 1024, \

   EC keySize < 224, #3DES_EDE_CBC

即:将该最后的“3DES_EDE_CBC”注释掉即可,即改为:#3DES_EDE_CBC

  • nhb2318 nhb2318(提问者) 这方法不对,根本没有finereport_10.0的目录,我已经部署到tomcat下了,tomcat下没有,但是我修改了java目录下的java.security
    2021-12-18 16:54 
  • yzm6EdDN7037671 yzm6EdDN7037671 回复 nhb2318(提问者) 老哥你最后怎么解决?
    2023-10-31 14:47 
  • 1关注人数
  • 763浏览人数
  • 最后回答于:2021-12-20 13:21
    请选择关闭问题的原因
    确定 取消
    返回顶部