The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "sun.security.validator.ValidatorException: PKIX path building failed:

项目背景:

 

Springboot + mybatis+sqlserver+druid

多数据源配置如下: 用的是微软驱动

  lorealparism:
          driver-class-name: net.sourceforge.jtds.jdbc.Driver
          url:  jdbc:jtds:sqlserver://XXXXXX:1433;DatabaseName=LOREALPARIS_PROD;encrypt=false;
          username: XXXXX
          password: XXXX
          hikari:
            maxPoolSize: 15

 

pom

        <!-- druid连接池 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>2.2.5</version>
反正就是2.几的版本
        </dependency>
<!--        <dependency>-->
<!--            <groupId>com.microsoft.sqlserver</groupId>-->
<!--            <artifactId>mssql-jdbc</artifactId>-->
<!--            <version>11.2.1.jre8</version>-->
<!--        </dependency>-->

 

 

经过:

本地测试都是好好的,已发到linux 服务商就报错了。

 

The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "sun.security.validator.ValidatorException: PKIX path building failed:

 

 

 

 

 

解决:

1 改动jdk 信任证书

有些人改动 jdk 配置就能生效,我这里试验了 ,对我来说无效。

http://t.zoukankan.com/blsz-p-11530380.html

2 更改驱动

 

 

 

 

      driver-class-name: net.sourceforge.jtds.jdbc.Driver
          url: jdbc:jtds:sqlserver://;DatabaseName=LOREALPARIS_TAB
          username: 
          password: 

 

 

把微软的pom 删了,换成如下

pom 文件:

<dependency> 
<groupId>net.sourceforge.jtds</groupId>
<artifactId>jtds</artifactId>
<version>1.2.4</version>
</dependency>

 

部分人到此为止,有成功得了 ,但是我这边仍然报错。

 3 数据源 duri 版本问题

 

又有这个问题:

java.sql.SQLException: The SQL statement must not be null or empty

 

 

查询了很多了,这里把版本降低到1.1.6之下就行了

  <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.5</version>
        </dependency>

 

posted @ 2023-01-13 18:16  未确定  阅读(2002)  评论(0编辑  收藏  举报