无法使用带有 Maven 的 JSF 项目连接到 MS SQL

问题描述

我一直在尝试使用 Microsoft 官方 JDBC 驱动程序:https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc 尝试了最新的和最旧的,甚至其他随机的,仍然没有成功。

我收到此错误:

java.lang.NoClassDefFoundError: sun/security/ssl/HandshakeStateManager
javax.el.ELException: java.lang.NoClassDefFoundError: sun/security/ssl/HandshakeStateManager

我还尝试了其他类似的建议:https://stackoverflow.com/a/64386147/13924032 删除了sun文件夹,还是一样的错误。

这是我使用的依赖

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>6.1.0.jre8</version>
</dependency>

我的连接代码也是这样的:

    public void ConectarSQL() {
        try {
            Class.forName(driver);
            con = DriverManager.getConnection(url);
            if(con != null) {
               DatabaseMetaData metaObj = (DatabaseMetaData) con.getMetaData();
               System.out.println("Driver Name?= " + metaObj.getDriverName() + ",Driver Version?= " + metaObj.getDriverVersion() + ",Product Name?= " + metaObj.getDatabaseProductName() + ",Product Version?= " + metaObj.getDatabaseProductVersion());
            }
        } catch(ClassNotFoundException | SQLException sqlException) {
            sqlException.printStackTrace();
        }
    }

DataBaseMetaData 仅用于测试连接。

我错过了什么吗?这是我第一次使用 maven,对简单的 java 项目没有任何问题。

我使用的是 glassfish 服务器 5 Java EE 8 网页版 JSF 2.3 JDK 1.8 (1.8.0_131)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)