【问题标题】:JDBC driver not working for XPage after upgrade to 9.0.1 FP3升级到 9.0.1 FP3 后,JDBC 驱动程序不适用于 XPage
【发布时间】:2015-04-07 11:47:07
【问题描述】:

我在使用 MS JDBC 驱动程序连接 Lotus Domino 9.0.1FP3 和 MSSQL 数据库时遇到问题,this question 中详述了同样的问题。在 9.0.1 中一切正常,但 FP3 的应用程序断开了链接。

The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "SSLv3 SSLContext not available". SSLv3 SSLContext not available

我已经尝试升级 JDBC 驱动程序,但它似乎没有像 TomSta 在他的 cmets 中那样产生任何影响

我尝试设置 encrypt=true 和 trustServerCertificate=true 似乎也没有任何区别。

是否需要对 Domino / SQL / Windows 服务器进行更改才能解决此问题?

我的代码和错误位置如下图:

    public static ResultSet executeQuery(String connString, String userName, String pwd, String query) {

    //example connString: "jdbc:sqlserver://10.203.32.16;DatabaseName=DBTest";

    ResultSet rs = null;
    Statement st = null;
    Connection conn = null; 

    try {
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
        conn = DriverManager.getConnection(connString, userName, pwd); //Error occurs here
        st = conn.createStatement();
        rs = st.executeQuery(query);
    } catch (Exception e) {
        if ( query != null ) {
            System.out.println("Failed SQL query: " + query);
        }
        try {
            if (rs != null) { rs.close(); }
        } catch (SQLException sqlEx) { rs = null; }
        try {
            if (st != null) { st.close(); }
        } catch (SQLException sqlEx) { st = null; }
        try {
            if (conn != null) { conn.close(); }
        } catch (SQLException sqlEx) { conn = null; }
        e.printStackTrace();
        return null;
    }

    return rs;
} 

【问题讨论】:

    标签: xpages lotus-notes lotus-domino xpinc


    【解决方案1】:

    升级到 Fixpack 也会导致

    <DominoBinary>\jvm\lib\security\java.policy
    

    要更改为默认文件的文件,因此如果您在此处更改了某些内容(例如使用 Class.forName),则应添加授予类加载器的访问权限以使其正常工作。 我不知道这是否是一个原因,但有时错误消息并不是指根本原因。

    顺便说一句:我们体验到 jDTS 驱动程序比 Microsoft 驱动程序具有更好的性能(并且错误更少)。尽管您有问题,但您可能会查看它。 http://jtds.sourceforge.net/

    【讨论】:

    • java.policy 文件目前在我们的服务器上保留为默认设置,因此这不应该是问题。我尝试切换到使用 jDTS,但这会返回错误 403 - 您被禁止执行此操作。 sqljdbc4.jar 和 jtds-1.2.8.jar 都可以在我们其他介于 8.5.3 和 9.0.1 之间的服务器上运行(没有 FP3)。我试过添加 grant { 权限 java.security.AllPermission; };到 java.policy 文件没有成功。
    【解决方案2】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-11
      • 2021-08-30
      • 2014-06-02
      • 1970-01-01
      • 2016-04-02
      • 2011-12-16
      • 1970-01-01
      相关资源
      最近更新 更多